2012-07-17 46 views
2

让我们考虑我有两个逗号分隔的字符串,如下所示。如何将逗号分隔的字符串添加到C#中的数据表?

string name = "A,B,C,D"; 
string value = "100,200,300,400"; 

所以我想分割这两个字符串,并要插入到数据表是如下图所示。

名称值

A 100

张使用B 200

C 300

d 400

所以,请帮我出这一点。

在此先感谢

+5

你尝试过什么(例如'string.Split'),并已在运行什么问题到? – 2012-07-17 09:22:57

+0

提示:Split/Zip/Select或类似的聚合; – Carsten 2012-07-17 09:24:09

+0

只是分割一个字符串,创建一个包含两列的数据表,迭代拆分的字符串,将行添加到数据表中,只要你想。 – 2012-07-17 09:27:15

回答

2

尝试是这样的:

DataTable table = new DataTable(); 
table.Columns.Add("name", typeof(string)); 
table.Columns.Add("value", typeof(string)); 

string name = "A,B,C,D"; 
string value = "100,200,300,400"; 

string[] names = name.Split(','); 
string[] values = value.Split(','); 

for(int i=0; i<names.Length; i++) 
    table.Rows.Add(new object[]{ names[i], values[i] }); 

但是你要执行一些验证代码,使其更 合适。

0

分裂SOURSE字符串,并添加到数据表

DataTable table = new DataTable(); 
    table.Columns.Add("name", typeof(string)); 
    table.Columns.Add("value", typeof(string)); 

    table.Rows.Add("nameStr", "valueStr"); 
0
string[] names = name.split(','); 
string[] values = value.split(','); 

DataTable dt = new DataTable(); 
dt.Columns.Add("name"); 
dt.Columns.Add("value"); 

int cnt = names.length; 
for(int i=0; i<cnt; i++) 
{ 
    DataRow dr = dt.NewRow(); 
    dr["name"] = names[i]; 
    dr["value"] = values[i]; 
} 
+0

这也会起作用,但语法错误在那里。这是 “字符串名称[]”的位置,我们需要编写“字符串[]名称”。 通过这样做,它正在工作。 感谢您的回复... – 2012-07-17 09:56:52

+0

嘿,那是我的不好 – codingbiz 2012-07-17 10:03:30

0

试试这个:

string[] name = "A,B,C,D".Split(','); 
      string[] value = "100,200,300,400".Split(','); 
      DataTable tbl = new DataTable(); 
      tbl.Columns.Add("name", typeof(string)); 
      tbl.Columns.Add("value", typeof(string)); 
      for(int i=0; i<name.Length;i++) 
      { 

       tbl.Rows.Add(name[i],value[i]); 
      } 
相关问题