在类中学到了对数据的存储,怎样对一个文件进行读取就需要用到I/O流的知识。文件的读写步骤有4步:首先打开文件的输入或输出流;其次是判断文件或应用程序是否存在数据需要输入或输出流中;第三步是进行文件数据的读入或写出;最后是关闭文件的输入或输出。
在磁盘文件中输入数据是需要通过FileInputStream(字节流)、FileReader(字符流),输出数据是需要通过FileOutputStream(字节流)、Filewrite(字符流)。文件特定属性的相关信息我们可以通过File类来获取,首先要创建一个File对象是的实例:File file=new File(文件的路径或者创建一个新的文件);,file.需要调用的方法
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class Shiyan2 {
public static void main(String[] args) throws IOException {
FileReader fis =new FileReader("D:/Helloword.java"); //创建一个对象,打开文件的输入流
FileWriter fos =new FileWriter("D:/Helloword1.java"); //创建一个对象,打开文件的输出流
int i;
while((i=fis.read())!=-1){ //读文件Helloword中的内容,!=-1是读到了最后一个字符
fos.write(i); //把读到的内容输出到Helloword1文件中,完成文件的复制
}
fis.close(); //关闭输入流
fos.close(); //关闭输出流
FileReader fis1 =new FileReader("D:/Helloword1.java");
System.out.print("文件Helloword1.java中是什么内容:");
while((i=fis1.read())!=-1){
System.out.print((char)i);
} //对Helloword1中的内容进行输出
fis1.close();
}
}
在文件的输入流中还有一类,BufferedReader和BufferedInputStream.
FileReader fos1=new FileReader(文件的路径);
BufferedReader br =new BufferedReader(fos1);
String s = null;
System.out.print("用bufferedreader的readLine方法输出:");
while((s=br.readLine())!=null){
System.out.print(s);
}
BufferedRead中的readLine的方法是读取一行字符串,使用循环就可以读取全部的内容