2013-03-19 52 views
2

我有一個文件,我嘗試在屏幕上打印100個名稱。Java字符串連接和System.out.println不起作用

StringTokenizer sb = new StringTokenizer(fileContents, " ,\n\t"); 
    while (sb.hasMoreElements()) 
    { 
    String name = sb.nextToken(); 
    System.out.print(name); 
    System.out.print(" [ "); 
    System.out.println(); 
    } 

當我有//System.out.print(" [ ");註釋掉,它會正確顯示所有100個名稱。

取消註釋它將只顯示100行,只有" [ ",名稱根本不顯示。

爲什麼會發生這種情況?這是我第一次system.out.println決定忽略輸入。

+0

也許你在該文件中有一些顯示爲空的特殊字符?因此,「[」只有線? – Dariusz 2013-03-19 13:00:59

+6

爲什麼不使用'System.out.prinln(name +「[」)'? – pepuch 2013-03-19 13:01:06

+0

可能是空行或whitechar? – 2013-03-19 13:02:16

回答

0

您的文件的編碼可能包含可能導致打印空(或[)行的其他字符。

嘗試添加回車\r特殊字符到StringTokenizer的列表中。

+0

謝謝大家的幫助,我不能upvote,因爲它說我需要15點聲望upvote。 – user2186597 2013-03-19 13:28:18

+0

@ user2186597您可以通過單擊答案左側的空白v來接受該問題。 – Dariusz 2013-03-19 14:02:53