0
该方法返回一个数组,计算文档中的行数,单词和字符数。通过测试文件运行后,我仍然收到一些错误。计数单词,字符和行数
public static int[] wc(Reader in) throws IOException {
int data = in.read();
int charcounter = 0;
int linecounter = 0;
int wordcounter = 0;
boolean previouswhitespace = false;
while (data != -1){
if (((char) data == '\n')){
linecounter++;
}
if (!(Character.isWhitespace((char) data))){
charcounter++;
if ((previouswhitespace == true) || (wordcounter == 0)){
previouswhitespace = false;
wordcounter++;
}
}
else if ((Character.isWhitespace((char) data))){
previouswhitespace = true;
}
data = in.read();
}
int[] array = {linecounter, wordcounter, charcounter};
return array;
}
''\ n''不是平台无关的换行符 –
什么错误?张贴在问题上。 –
另外,我敢肯定,将int数据转换为char不是执行字符解码操作的正确方法。有很多可能的读者和文件流,这会更好。 –