2012-07-17 60 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]); 
      } 
相關問題