2014-04-04 87 views
-1

我已經看到幾個職位關於this.But他們告訴拆分不是StringTokenizer選項卡作爲分隔符(StringTokenizer)沒有作爲參數

這是我的輸入文件:inputfile with tab delimiter

我寫的StringTokenizer得到的line.So我能夠得到

1.0  3.0 
delim1.0 
delim3.0 
so on 

每個值但是,當我試圖把分隔符作爲一個參數就對我來說工作不正常。 (通過按下在keyboard 「Tab」 鍵)作爲參數

while ((sCurrentLine = br.readLine()) != null) { 
System.out.println(sCurrentLine); 
StringTokenizer st = new StringTokenizer(sCurrentLine, args[0]); 
while(st.hasMoreTokens()){ 
    System.out.println("delim"+st.nextToken()); 
} 
} 

1.passed " ",它工作正常。

2.passed "\t"作爲argument.It是顯示

1.0  3.0 
delim1.0  3.0 

3.passed \t作爲argument.It是表示該

1.0  3.0 
delim1.0  3.0 

爲什麼會這樣。

+0

下載者請評論 –

+1

你期待什麼?即使你通過一個標籤而不是一個空格來讓分詞器分割線條?如果文件中的數字與空格分開,則必須使用空格作爲分隔符。 –

+0

+1不,空格是TAB。在發佈問題的同時,格式化它成爲空間。 –

回答

0

"\t"不能作爲字符串傳遞。嘗試傳遞它作爲\\\t,它應該工作,因爲\t是一個轉義序列,應作爲包裝類存儲在原始字符或字符中的字符。

相關問題