2011-05-03 68 views
1

如果我有一個文件,我正在使用字符串標記器來獲取逗號之間的值。它是一個csv文件。這裏是樣本輸入:java字符串標記器

test,first,second,,fourth,fifth 

所以我怎麼能捕捉到空的逗號?現在它只是假裝什麼都沒有。它甚至沒有看到有一個地方沒有任何東西。

+0

你可以發佈令牌化代碼嗎? – 2011-05-03 15:41:28

+1

首先:這是作業還是現實生活?這在問題的回答方式上會產生巨大的差異 – 2011-05-03 15:43:18

+0

[Java中的CSV解析 - 工作示例..]的可能重複(http://stackoverflow.com/questions/843997/csv-parsing-in-java-working例如) – 2011-05-03 15:53:03

回答

4

使用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

1

我不知道我是否正確理解你的問題。我會使用像opencsv這樣的知名軟件包。

0

分割技術很好,只要你的元素裏面沒有逗號。您可以使用現有的庫。使用正則表達式處理CSV也有很好的效果。