IO流的文件写入与读取

  1. package Login;  
  2.   
  3.   
  4. import java.io.BufferedReader;  
  5. import java.io.BufferedWriter;  
  6. import java.io.FileInputStream;  
  7. import java.io.FileNotFoundException;  
  8. import java.io.FileOutputStream;  
  9. import java.io.FileReader;  
  10. import java.io.FileWriter;  
  11. import java.io.IOException;  
  12. import java.io.ObjectInputStream;  
  13. import java.io.ObjectOutputStream;  
  14.   
  15.   
  16. public class ObjectOutTest {  
  17. /* 将对象写入文件方法 */  
  18. public void write(Object o, String path) {  
  19.    try {  
  20.     /* 创建存取文件 */  
  21.     FileOutputStream fileStream = new FileOutputStream(path);  
  22.     /* 将存取文件写入对象 */  
  23.     ObjectOutputStream os = new ObjectOutputStream(fileStream);  
  24.     /* 写入对象 */  
  25.     os.writeObject(o);  
  26.     System.out.println("写入数据成功");  
  27.     /* 关闭ObjectOutputStream */  
  28.     os.close();  
  29.    } catch (FileNotFoundException e) {  
  30.     e.printStackTrace();  
  31.    } catch (IOException e) {  
  32.     e.printStackTrace();  
  33.    }  
  34. }  
  35. /* 将对象从文件中读出来 */  
  36. public void read(String path) {  
  37.    try {  
  38.     /* 连接到要读取的文件 */  
  39.     FileInputStream fileStream = new FileInputStream(path);  
  40.     /* 怎样读取连接到的文件 */  
  41.     ObjectInputStream os = new ObjectInputStream(fileStream);  
  42.     /* 读取对象 */  
  43.     Dog dog = (Dog) os.readObject();  
  44.     System.out.println("输出结果:" + dog.getName() + " is a "  
  45.       + dog.getSex() + ",高:" + dog.getHeight() + ",长:"  
  46.       + dog.getLength());  
  47.     /* 关闭对象 */  
  48.     os.close();  
  49.    } catch (FileNotFoundException e) {  
  50.     e.printStackTrace();  
  51.    } catch (IOException e) {  
  52.     e.printStackTrace();  
  53.    } catch (ClassNotFoundException e) {  
  54.     e.printStackTrace();  
  55.    }  
  56. }  
  57. /* 往文件写入字符串 */  
  58. public void wirteString(String path, String context) {  
  59.    try {  
  60.     /* 创建写入对象 */  
  61.     FileWriter fileWriter = new FileWriter(path);  
  62.     /* 创建缓冲区 */  
  63.     BufferedWriter writer = new BufferedWriter(fileWriter);  
  64.     /* 写入字符串 */  
  65.     writer.write(context);  
  66.     /* 关掉对象 */  
  67.     writer.close();  
  68.     System.out.println("写入字符串成功!");  
  69.    } catch (IOException e) {  
  70.     e.printStackTrace();  
  71.    }  
  72. }  
  73. /* 读取文件中的字符串 */  
  74. public void readString(String path) {  
  75.    try {  
  76.     /* 创建读取对象 */  
  77.     FileReader fileReader = new FileReader(path);  
  78.     /* 创建缓存区 */  
  79.     BufferedReader reader = new BufferedReader(fileReader);  
  80.     /* 读取文件 */  
  81.     String line = null;  
  82.     while ((line = reader.readLine()) != null) {  
  83.      System.out.println("读取成功:" + line);  
  84.     }  
  85.     /* 关闭对象 */  
  86.     reader.close();  
  87.    } catch (FileNotFoundException e) {  
  88.     e.printStackTrace();  
  89.    } catch (IOException e) {  
  90.     e.printStackTrace();  
  91.    }  
  92. }  
  93. /* 出函数入口 */  
  94. public static void main(String args[]) {  
  95.    // Dog为外部类必须序列化才能实现它的对象的读取  
  96.    Dog d = new Dog();  
  97.    d.setHeight(12);  
  98.    d.setLength(23);  
  99.    d.setName("bobi");  
  100.    d.setSex('b');  
  101.    ObjectOutTest qqt = new ObjectOutTest();  
  102.    qqt.wirteString("F:/IO/cc.sex""chengchao 123456789");  
  103.    qqt.readString("F:/IO/cc.sex");  
  104.     
  105.      
  106. }  
  107. }  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值