2011-07-26 74 views
2

我在下面這樣的字符串取回數據:數據解析問題C#

dog,cat,snake,bird,cow,parrot,lion 
grass,green,fruit,bag,car,melon,coat 
apple,orange,grape,butter,jelly,chips,milk 

我想把這個數據在GridView,其中每行中在GridView代表一排,我也想要參加第一項或每一行並填入下拉列表。

問題是如何在代碼中知道每行開始和結束的位置?因爲數據以字符串形式返回。

回答

4

各執換行符和逗號的字符串....

string input = "YOURINPUTSTRING"; 
foreach(string line in input.Split('\n')) 
{ 
    //each row 
    string[] values in line.Split(',');//add this value array as a new gridview row 
} 
1

如果你的意思是實際分析數據,讓你有某種集合(列表或數組)的 - 你可以簡單地做到以下幾點:

string yourString = "dog,cat, ... , chips,milk"; 
string[] items = yourString.Split(','); 

這將使每個單個項目的成數組 - 你可以迭代來生成你的網格視圖。

如果你想每一行分離(使用新的行字符作爲分隔符,那麼你可以只使用:

string yourString = "dog,cat, ... , chips,milk"; 
string[] lines = yourString.Split('\n'); //Splits each of your lines 
//Split the individual string array here using .Split(',') 
+0

是的,但如何才能獲得信息的第一個「行」,但我該如何知道「草地」從哪裏開始? 2沒有逗號分隔 –

0

我不明白你怎麼會知道,除非你可以修改返回的字符串包含某種分隔符(即一個分號)...它看起來有點在你的榜樣,也許換行字符是分隔符?

dog,cat,snake,bird,cow,parrot,lion;grass,green,fruit,bag,car,melon,coat;apple,orange,grape,butter,jelly,chips,milk 

如果你有一個換行符在那裏你可以做類似的事情:

string[] lines = yourtext.Split(new string[] { Environment.NewLine }, StringSplitOptions.None); 
1

我想補充:

string[] lines = theInputString.Split(new char[]{'\n'},StringSplitOptions.RemoveEmptyEntries); 

和綁定到DataGrid

grid.DataSource =線; grid.DataBind();