/// <summary> /// 分割TABLE /// </summary> /// <param name="p_Table">原始TABLE</param> /// <param name="p_Count">没页多少个</param> /// <returns></returns> public static IList<DataTable> CopyTable(DataTable p_Table, int p_Count) { int _TableCount = p_Table.Rows.Count / p_Count; if (p_Table.Rows.Count % p_Count != 0) _TableCount++; IList<DataTable> _TableList = new List<DataTable>(); for (int i = 0; i != _TableCount; i++) { DataTable _Table = p_Table.Clone(); for (int z = 0; z != p_Count; z++) { int _RowIndex = (i * p_Count) + z; if (_RowIndex > p_Table.Rows.Count - 1) break; _Table.Rows.Add(p_Table.Rows[_RowIndex].ItemArray); } _TableList.Add(_Table); } return _TableList; }这个看行不
DataTable dt = new DataTable();//虚拟一个有75行数据的数据表 dt.Columns.Add("ID"); for (int w = 0; w < 75; w++) { DataRow dr = dt.NewRow(); dr["ID"] = w.ToString(); dt.Rows.Add(dr); } int i = dt.Rows.Count; int x = i / 20;//要分多少个表 if (i % 20 > 0) { x++; } DataTable[] dts = new DataTable[x]; int y = 0; for (int j = 0; j < x; j++) { dts[j] = new DataTable(); dts[j].Columns.Add("ID"); for (int row = y; row < y + 20; row++) { if (row < i) { dts[j].ImportRow(dt.Rows[row]); } } y += 20; }
/// 分割TABLE
/// </summary>
/// <param name="p_Table">原始TABLE</param>
/// <param name="p_Count">没页多少个</param>
/// <returns></returns>
public static IList<DataTable> CopyTable(DataTable p_Table, int p_Count)
{
int _TableCount = p_Table.Rows.Count / p_Count;
if (p_Table.Rows.Count % p_Count != 0) _TableCount++; IList<DataTable> _TableList = new List<DataTable>(); for (int i = 0; i != _TableCount; i++)
{
DataTable _Table = p_Table.Clone();
for (int z = 0; z != p_Count; z++)
{
int _RowIndex = (i * p_Count) + z;
if (_RowIndex > p_Table.Rows.Count - 1) break;
_Table.Rows.Add(p_Table.Rows[_RowIndex].ItemArray);
}
_TableList.Add(_Table);
}
return _TableList;
}这个看行不
DataTable dt = new DataTable();//虚拟一个有75行数据的数据表
dt.Columns.Add("ID");
for (int w = 0; w < 75; w++)
{
DataRow dr = dt.NewRow();
dr["ID"] = w.ToString();
dt.Rows.Add(dr);
}
int i = dt.Rows.Count;
int x = i / 20;//要分多少个表
if (i % 20 > 0)
{
x++;
}
DataTable[] dts = new DataTable[x];
int y = 0;
for (int j = 0; j < x; j++)
{
dts[j] = new DataTable();
dts[j].Columns.Add("ID");
for (int row = y; row < y + 20; row++)
{
if (row < i)
{
dts[j].ImportRow(dt.Rows[row]);
}
}
y += 20;
}