3-7为什么我的代码输出是21?
来源:3-7 自由编程
Z_ZG
2020-04-27 10:20:12
package demo;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class demo {
public static void main(String args[]) {
try {
FileInputStream fis=new FileInputStream("/home/gordon/speech.txt");
int n=0,i=0;
System.out.println("文本内容:");
while(!((n=fis.read())==-1)) {
System.out.print((char)n);
i++;
}
System.out.println("统计结果:speech.txt文件中共有"+i+"个字节");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
这里调试发现文件末尾有个10的数据传入,再传入的-1
1回答
同学你好,10对应的ASCII码含义是换行键,同学可以检查一下txt文件是否有换行,如果有换行,删除换行保存文件,再执行程序即可。
如果没有解决同学的问题,建议同学将txt文件内容发到问答区,老师再为同学解答。
如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
相似问题