2014/03/21 关于I/O

来源:互联网 发布:java excel导出到桌面 编辑:程序博客网 时间:2024/05/18 00:34

I/O(Input/Output,输入与输出)

InputStream为字节输入流的抽象类,所有字节输入流的父类

OutputStream字节输出流的抽象类,所有字节输出流的父类

File类是java.io包中唯一代表磁盘文件本身的对象,调用File类中的方法实现创建、删除、重命名文件等操作。

FileInputStrea和FileOutputStream分别继承于InputStrea和OutputStream,FileInputStrea和FileOutputStream只能提供了对字节或字节数组的读取方法。由于汉字在文件中占两个字节,若使用字节流则会出现乱码,而使用FileReader和FileWriter则可以避免。

import java.io.*;

public class Student {
public static void main(String[] args) {

String in[] = {"输入与输出!", "hello word!", "你好啊!"}; //定义字符串数组

File fi = new File("word.txt");                                                    //创建文件对象

try {
FileWriter fw = new FileWriter(fi);                                   //创建FileWriter 类对象
BufferedWriter bfw = new BufferedWriter(fw);             //创建BufferedWriter类对象

for(int i = 0 ; i < in.length ; i++){                                      //循环遍历数组
bfw.write(in[i]);
bfw.newLine();
}
  bfw.close();                                                                       //将数据流关闭
fw.close();

} catch (Exception e) {
e.printStackTrace();
}

try {
FileReader fr = new FileReader(fi);                               //创建FileReader 类对象
BufferedReader bfr = new BufferedReader(fr);           //创建BufferedReader类对象
String s = null;

for(int j=1;s != null;j++){                                                   //输出文件
s = bfr.readLine();
System.out.println("第"+j+"行:"+s);
}
bfr.close();                                                                          //将数据流关闭
fr.close();

} catch (Exception e) {
   e.printStackTrace();
}
}
}
0 0