从txt文件读取后奇怪的字符

时间:2015-04-11 07:27:56

标签: java inputstream bufferedreader

我有一个包含三行整数的txt文件,将它们添加到List后我在第一个索引的开头找到了一个奇怪的char。我使用InputStream,BufferedReader和StringBuilder来读取文件。我尝试在几个地方使用println()语句进行调试,但我仍然无法弄清楚char来自何处。

 File selectedFile = fileChooser.getSelectedFile();
                    inputStream = new FileInputStream(selectedFile);
                    BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
                    StringBuilder out = new StringBuilder();
                    String line;
                    while ((line = reader.readLine()) != null) {
                        out.append(line);
                        items.add(line);
                    }

当我尝试将输出从打印出来的List项目复制到这篇文章时,某个我正在谈论的char没有显示,所以我将发布截图:

http://imgur.com/gjaF3no

http://imgur.com/JHAH6mV

第一个是整个列表,第二个应该显示我更清楚地说话的字符,它看起来像“3”之前的点。任何帮助将不胜感激,谢谢。

2 个答案:

答案 0 :(得分:0)

您可以尝试通过执行以下操作删除所有控制字符(奇怪字符):

strangeString.replaceAll("\\p{Cntrl}", ""); 

参考:Java - removing strange characters from a String

答案 1 :(得分:0)

谢谢大家的帮助。问题实际上是在原始的txt文件中,如@coder