本帖最后由 张洪慊 于 2013-5-1 15:42 编辑
看下代码:- package filereader;
- import java.io.FileReader;
- import java.io.IOException;
- import static java.lang.System.out;
- class FileReaderDemo2{
- public static void main(String[] args)throws IOException{
- FileReader fr = new FileReader("test.txt");//文件内容a
- char[] buf = new char[3];//定义数组长度为3
- int num=fr.read(buf);
- out.println("num="+num+"..."+new String(buf));
- num=fr.read(buf);
- out.println("num="+num+"..."+new String(buf));
- num=fr.read(buf);
- out.println("num="+num+"..."+new String(buf));
- System.out.println("over");
- }
- }
复制代码但输出结果却是: (我把源文件和test.txt均放在了c:\下)
竟然输出了3个a??我很郁闷,我在反复检查c:\test.txt内容(我把源文件和test.txt均放在c:\下测试)->确定为一个a
我在考虑是不是因为我的操作系统缘故(windows 7 64bit 旗舰版)
于是我把java源文件和test.txt拷到XP系统/windows 7 32bit下测试:
一个a,正常结果.
我在用U盘把JDK和源文件拷到同学机器上(和我一样操作系统)运行,3个a…..郁闷.. 这是为什么?
|