【发布时间】:2010-05-20 21:18:24
【问题描述】:
你好 Java 开发人员。我有一个非常奇怪的问题。
我正在尝试逐行读取 csv 文件。我正处于我刚刚测试线条读数的地步。仅每次我阅读一行时,该行在文本的每个字符之间都包含方形字符。我什至将文件保存为写字板和记事本中的 txt 文件,没有任何变化。
所以我一定是在做傻事……
我有一个 csv 文件,标准 csv 文件,是的,其中有一个带有逗号的文本文件。我尝试阅读一行文字,但文字已被完全修改,无法在文字中找到短语。
有什么建议吗?代码如下。
//open csv
File filReadMe = new File(strRoot + "data2.csv");
BufferedReader brReadMe = new BufferedReader
(new InputStreamReader(new FileInputStream(filReadMe)));
String strLine = brReadMe.readLine();
//for all lines
while (strLine != null){
//if line contains "(see also"
if (strLine.toLowerCase().contains("(see also")){
//write line from "(see also" to ")"
int iBegin = strLine.toLowerCase().indexOf("(see also");
String strTemp = strLine.substring(iBegin);
int iLittleEnd = strTemp.indexOf(")");
System.out.println(strLine.substring(iBegin, iBegin + iLittleEnd));
}
//update line
strLine = brReadMe.readLine();
} //end for
brReadMe.close();
【问题讨论】:
-
文件是用什么字符编码写入的?您正在使用没有编码的 InputStreamReader,因此它将使用默认的平台编码,这并不总是您想要的。
-
这是在windows电脑上制作的,我用的是windows电脑...