本帖最后由 程宏志 于 2012-8-2 15:49 编辑
//文件名为Demo.txt,内容为:abcdefg
import java.io.*;
class Test_3
{
public static void main(String[] args) throws IOException
{
FileReader fr=new FileReader("Demo.txt");
char[] buf=new char[3];
int num1=fr.read(buf);//3
System.out.println("num1="+num1+"...."+new String(buf));//abc
int num2=fr.read(buf);//3
System.out.println("num2="+num2+"...."+new String(buf));//def
int num3=fr.read(buf);//按照视频中讲的num3为读到的字符个数,应该为1和gef,但不知为什么我的运行结果是3和g,
System.out.println("num3="+num3+"...."+new String(buf));//
int num4=fr.read(buf);//-1
System.out.println("num4="+num4+"...."+new String(buf));//gef
fr.close();
}
}
按照视频中讲的num3为读到的字符个数,那应该为1和gef,但不知为什么我的运行结果是3和g,难道和jdk版本有关吗?请高手帮忙解答?
追问一下,num到底是指读取的字符数组的长度还是读取字符的个数,虽然老师讲的是指后者,但运行程序时,显示的却是前者,好迷惑啊!给小弟弟解惑下,谢谢!
|