现在要读取一个文本文件a.txt,里面有中文字符和英文字符。
FileInputStream fis = new FileInputStream("d://a.txt");
int by = 0;
while((by=fis.read())!=-1){
system.out.print(char(by));
}
fis.close();
当字节流按照一个字节读取文件的时候,为什么读取英文字符输出在控制台没有问题,读取中文字符输出会有问题?在java里英文字符跟中文字符不都是占2个字节吗?当你一个字节读取英文字符的时候它不是跟读取中文一样只读取了一个字节吗?为什么英文字符输出没问题而中文字符输出的时候就有问题请大神帮忙回答下谢谢
UTF-8,英文一个字节,中文两个。Unicode才是中英文都是两个字节。
这个不能赖Java,这个得看你的a.txt是以什么编码保存。