我是Java新手。我正在学习fileIO。我正在写一个小程序在txt文件中显示内容。我的代码如下:java读取文件----为什么我的代码工作
import java.io.*;
public class Readf {
public static void main(String arg[]) throws IOException {
FileInputStream in = null ;
try {
in = new FileInputStream("input.txt");
int c;
String cs="";
while ((c=in.read())!=-1) {
cs = cs + (char)c;
if ((char)c=='\n') {
System.out.println(cs);
cs="";
}
}
} finally {
if (in != null) {
in.close();
}
}
}
}
我正在阅读在线教程。它告诉我用int变量读取文件。由于我想在char中显示内容,我将它们转换为char类型,并将它存储到一个sting中,并且它工作了!在Java中,int变量是32位,但是char变量是16位。每次我读32位整数时,我会将它们转换为16位字符。为什么结果不是混乱?
如果你想混沌,在你的输入文件中使用BMP以外的字符,例如: – ninjalj
实际上,任何不是ASCII的东西都是很好的反例。尝试一个有'é'或'ç'的文件。或者阿拉伯语,中文等东西,像猫 – RealSkeptic