我是C#.net的新手。有人能幫我解決以下問題嗎?謝謝。如何讀取和解析各行的數據?
我需要從文件中讀取內容,然後檢查文件的每一行以查找由「:」或「,」分隔的數據。然後獲取「:」和「,」之間的數據。最後將其添加到數據表中。
我該怎麼做? 任何幫助是高度讚賞。
我是C#.net的新手。有人能幫我解決以下問題嗎?謝謝。如何讀取和解析各行的數據?
我需要從文件中讀取內容,然後檢查文件的每一行以查找由「:」或「,」分隔的數據。然後獲取「:」和「,」之間的數據。最後將其添加到數據表中。
我該怎麼做? 任何幫助是高度讚賞。
String linestring = streamreader.ReadLine();
String[] linetokens = linestring.Split(new String[]{":",","}, StringSplitOptions.None);
之後,linetokens數組將填充您需要的段。
當我讀取單獨的行/行時,我是否在循環中使用它? – Maraduarz
是的,也許是一個while循環,會在EOF結束,或者先調用streamReader.ReadLines()來獲取數組,然後您可以使用foreach循環,如下所示 – Wanabrutbeer
謝謝,通過一些調整,您的建議幫助我完成了我正在做的事情。 – Maraduarz
考慮到你的問題的一般性和整體範圍(即你應該把它分解成你不明白的部分,並單獨詢問),這是最好的我可以拿出可以做你的想。
var data = File.ReadLines() // read the content from a file
.Where(line => line.Contains(":") && line.Contains(",") // data separated by ":" & ","
.Select(line => line.Split(":,".ToArray())[1]) // data between ":" & "," -- could yield data between "," and ":"
.Select(data => new object[] {data}); // for DataTable.Rows.Add
// I can only assume you have a DataTable with one column
foreach(var rowData in data)
yourTable.Rows.Add(rowData);
希望這能激勵你。
謝謝你的建議。我在這方面還是個新手,剛從本週開始學習和工作。 我已經有一個多列數據表,但我想你的步驟來添加行將起作用。我會嘗試其餘的。 謝謝。 – Maraduarz
你見過[這篇文章](http://stackoverflow.com/a/736647/1370166)嗎?它在視覺基本命名空間中,但不要讓它阻止你。它可以在C#中使用。 – TylerOhlsen
我剛剛通過它,我很難在C#中做到這一點。謝謝 – Maraduarz