我想問如何讀取CSV文件並顯示CSV文件中的某些值。讀取CSV文件和顯示值
我的CSV文件看起來像這樣:
"10","20""1AA","1BB,"1CC"
"30","40""2AA","2BB,"2CC"
"50","60""3AA","3BB,"3CC"
所以,我想1AA
如果一個Integer是10和20之間,如果沒有任何可能的API。
我想要做的事:
如果整型(int i)以等於57,它應該返回3AA。
如果我等於33,它應該返回2AA。
現在應該
我想問如何讀取CSV文件並顯示CSV文件中的某些值。讀取CSV文件和顯示值
我的CSV文件看起來像這樣:
"10","20""1AA","1BB,"1CC"
"30","40""2AA","2BB,"2CC"
"50","60""3AA","3BB,"3CC"
所以,我想1AA
如果一個Integer是10和20之間,如果沒有任何可能的API。
我想要做的事:
如果整型(int i)以等於57,它應該返回3AA。
如果我等於33,它應該返回2AA。
現在應該
使用的available CSV parser處理邊緣情況。一旦你使用它,併成功提取了現場,你可以使用:
string col2 = @"20""AA"; // literal string for demonstration purposes
string[] tokens = col2.Split('"');
int num;
if (tokens.Length == 2 && int.TryParse(tokens[0].Trim(), out num) && num >= 10 && num <= 20)
{
string whatYouWant = tokens[1]; // AA
}
這完全不能幫助我,因爲我的CSV文件有更多的1行...請參閱我的編輯 – bramhaag 2015-02-23 10:20:52
@bramhaag:這有什麼關係?如果您使用您選擇的csv-parser處理行,則可以使用適當的方法獲取所有字段(fe ['parser.ReadFields()'](https://msdn.microsoft.com/en-us/library/ microsoft.visualbasic.fileio.textfieldparser.readfields%28v = vs.110%29.aspx)與'TextFieldParser')。然後,你的問題仍然存在於字符串問題之上。如果你想查看完整的代碼,你的問題太廣泛了,因爲你確實希望我們爲你實現你的需求。 – 2015-02-23 10:25:21
@bramhaag:現在我已經重讀了你編輯的問題,現在看來這是完全不同的問題。您希望根據整數參數獲取特定行的值。那麼你現在的方法有什麼問題? – 2015-02-23 10:42:48
可以使用流閱讀器讀取的文件,然後逐行讀取所有行的所有文件,使列表或數組,然後應用你的過濾器,讓您的需要的行,然後從這些行中獲取數據。總之嘗試一些事情,如果問題來到這裏。 – 2015-02-23 09:55:05
使用可用的CSV解析器來處理邊緣情況。 – 2015-02-23 09:58:01