2013-03-19 54 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