如果我有一個文件,我正在使用字符串標記器來獲取逗號之間的值。它是一個csv文件。這裏是樣本輸入:java字符串標記器
test,first,second,,fourth,fifth
所以我怎麼能捕捉到空的逗號?現在它只是假裝什麼都沒有。它甚至沒有看到有一個地方沒有任何東西。
如果我有一個文件,我正在使用字符串標記器來獲取逗號之間的值。它是一個csv文件。這裏是樣本輸入:java字符串標記器
test,first,second,,fourth,fifth
所以我怎麼能捕捉到空的逗號?現在它只是假裝什麼都沒有。它甚至沒有看到有一個地方沒有任何東西。
使用String#split()將被推薦使用StringTokenizer。
String[] s = "test,first,second,,fourth,fifth".split(",");
System.out.println(Arrays.asList(s));
System.out.println(s.length);
// output:
// [test, first, second, , fourth, fifth]
// 6
另外,如果你在你的代碼,更多地參與CSV解析,如果可能的話,儘量使用現有的庫像JavaCSV。
我不知道我是否正確理解你的問題。我會使用像opencsv這樣的知名軟件包。
分割技術很好,只要你的元素裏面沒有逗號。您可以使用現有的庫。使用正則表達式處理CSV也有很好的效果。
你可以發佈令牌化代碼嗎? – 2011-05-03 15:41:28
首先:這是作業還是現實生活?這在問題的回答方式上會產生巨大的差異 – 2011-05-03 15:43:18
[Java中的CSV解析 - 工作示例..]的可能重複(http://stackoverflow.com/questions/843997/csv-parsing-in-java-working例如) – 2011-05-03 15:53:03