程序为什么会这样提示出错
import *;public class ByteFile
{
private String filename;//文件名
public ByteFile(String filename)//构造方法,指定文件名
{
this.filename=filename;
}
public void writeToFile(byte[] buffer)throws IOException//将缓冲区数据写入指定文件
{
FileOutputStream fout=new FileOutputStream(this.filename);//创建文件输出流对象
fout.write(buffer);//将缓冲区中数据写入输入流
fout.close();
}
public void readFromFile()throws IOException//读取指定文件中数据并显示
{
FileInputStream fin=new FileInputStream(this.filename);//创建文件输入流对象
System.out.print(this.filename+":");
byte[] buffer=new byte[512];//字节缓冲区
int count=0;
do
{
count=fin.read(buffer);//读取输入流到缓冲区
for(int i=0;i<count;i++)
System.out.print(buffer[i]+" ");
System.out.println("count="+count);
}while(count!=-1);
fin.close();
}
public void copyFile(String filename2)throws IOException//将当前文件内容复制到filename2
{
FileInputStream fin=new FileInputStream(this.filename);//创建文件输入流对象
FileOutputStream fout=new FileOutputStream(filename2);//创建文件输出流对象
byte[] buffer=new byte[512];//字节缓冲区
int count=fin.read(buffer);//读取输入流
while(count!=-1)
{
fout.write(buffer,0,count);//写入buffer数组的0~count元素
count=fin.read(buffer);//读取输入流
}
fin.close();//关闭输入流
fout.close();//关闭输出流
System.out.println("Copyfile from"+this.filename+"to filename2");
}
public static void main(String args[])
{
byte[] buffer={0,1,2,3,4,5,6,7,8,9};
ByteFile afile=new ByteFile("ByteFile.dat");
afile.writeToFile(buffer);
afile.readFromFile();
afile.copyFile("ByteFile.dat");
}
上面程序通过文件流实现文件的写入,读出和复制,但是运行是报出为抛出异常!!我对抛出异常还不怎么理解,请大家帮忙修改下,顺便解释一下为什么出现这个错误!!谢谢啦