.NET经验心得探讨社区  
请在这里用键盘敲打出属于你的地位!
把DataTable排序:
     DataRow[] dr=dt.Select("a0 is not null","a0 asc");
     DataTable dt1=dt.Clone();
     dt1.Rows.Clear();         
     for(i=0;i<dt.Rows.Count;i++)
     {
          DataRow irow=dt1.NewRow();
          for(int j=0;j<dt.Columns.Count;j++)
          {
               if(dr[i][j]!=null)
                if(dr[i][j].ToString()!="") 
                     irow[j]=dr[i][j].ToString();
          }
      dt1.Rows.Add(irow);
     }
     return dt1;

把DataTable分割:
private string dataTable(DataTable dt)
  {
   int dtIndex=dt.Rows.Count;//取出dt的总行数
   int Index=0,i=0,index=0;//Index是数据行数
   string dataRow,Err="";
   dataRow=dt.Rows[0][0].ToString();//取出第一条记录的单号内容
   //如果总行数不等于0
   SqlConnection con=new SqlConnection(SqlHelper.ToEposConnString);
   con.Open();
   while(dtIndex!=index)//11
   {
    DataRow[] dr=dt.Select("a0='"+dataRow.ToString()+"'");//取出单号的总条数
    Index=dr.Length;//取新dr的行数
    DataTable dt1=dt.Clone();
    dt1.Rows.Clear();         
    for(i=0;i<Index;i++)//取出的新行数添加到新的DataTable中
    {
     DataRow irow=dt1.NewRow();
     for(int j=0;j<dt.Columns.Count;j++)
     {
      if(dr[i][j]!=null)
       if(dr[i][j].ToString()!="")
        irow[j]=dr[i][j].ToString();
     }
     dt1.Rows.Add(irow);
    }
    Err=InsertToDataBase(dt1,con);//调用方法将新的DataTable里的值写入数据库
    index=index+Index;
    if(index==dtIndex)
     break;
    dataRow=dt.Rows[index][0].ToString();
   }
   con.Close();
   return Err;
  }
posted on 2006-02-11 18:08  苦涩的咖啡  阅读(2158)  评论(1编辑  收藏  举报