重写上面的代码,void write(byte [] buf) 替代void write(byte [] buf,int off,int len)
FileInputStream和FileOutStream类分别用来创建磁盘文件的输入和输出流对象,通过它们的构造函数来制定文件路径和文件名。
创建FileInputStream实例对象是,指定的文件应当是存在和可读的。创建FileOutputStream实例对象时,如果指定的文件已经存在,这个文件原来的内容将被清除覆盖。如果不存在,自动创建。
对同一个磁盘文件创建FileInputStream对象的两种方式:
①
比较简单
直接传递文件名
FileInputStream inOne=new FileInputStream("hello.txt");
②
先创建一个File对象,这个对象里面含有这个文件的路径信息,在将File对象传递给FileInputStream
File f=new File("hello.txt");
FileInputStream inTwo=new FileInputStream(f);
允许文件与输入流关联之前能够对文件的属性进行判断,比如文件是否存在,文件是否是一个目录,是否可读等等
两种方式传递的参数都不能是目录名
创建FileOutputStream实例对象时,可以指定还不存在的文件名,但不能指定一个已被其他程序打开了的文件。
这里所说的输入输出都是相对于应用程序而言的,而不是相对文件而言的。