我把问题归纳一下:
方法1:当参数string[]不为空时,给DataTable新增一行,并用数组的值按序给DataTable列赋值,返回DataTable
方法2:当参数DataTable行数>0(当然要不为NULL),读取DataTable中的一行,按序取列中的值赋值给数组元素,返回数组问题:
string[]数组为空值全是null还是""?3.如果DataTable中的行不为空,则将一行中的值分别存入string[]中 
一行?是指第一行?

解决方案 »

  1.   

     //给datatable添加3个列 
                dt.Columns.Add("ID", typeof(Int32));
                dt.Columns.Add("进程名", typeof(String));
                dt.Columns.Add("进程分配内存", typeof(String));
                
                //获得所有进程
                processes = System.Diagnostics.Process.GetProcesses();
                foreach (Process p in processes)
                {
                    DataRow dr = dt.NewRow();
                    dr[0] = p.Id;
                    dr[1] = p.ProcessName;
                    dr[2] = p.PrivateMemorySize64/1024+" KB";
                    
                    dt.Rows.Add(dr);
                }
    依照次方法把string[]写进dt.
    从dt里读数据简单吧,反过来就是了
      

  2.   

    if(dt.Rows.Count>0)
    {}
    遍历string[]数组,添加行
    DataRow myDr;        myDr = myTb.NewRow();
            myDr["id"] = 1;
            myDr["Name"] = "Name";
          
            myTb.Rows.Add(myDr);