• Java入门基础


    P158 (白学)IO流

     

    文件字节输入、输出流 FileInputStream、FileOutputStream

    文件字符输入、输出流 FileReader、FileWriter

    缓冲流自带8kb缓冲区,提高原始字节流、字符流读写数据的性能

    字节缓冲输入、输出流 BufferedInputStream、BufferedOutputStream

    字符缓冲输入、输出流 BufferedReader、BufferedWriter

    转换流 InputStreamReader、OutputStreamWrite

    对象字节输入、输出流 ObjectInputStream、ObjectOutputStream

    P165 (白学)代码与文件编码不一致导致乱码问题,转换流解决

    InputStreamReader、OutputStreamWriter

    1. FileInputStream fis = new FileInputStream("test.txt");
    2. InputStreamReader isr = new InputStreamReader(fis, "GBK");
    3. BufferedReader br = new BufferedReader(isr);
    4. String line;
    5. while ((line = br.readLine()) != null) {
    6. System.out.println(line);
    7. }
    8. FileOutputStream fos = new FileOutputStream("test.txt");
    9. OutputStreamWriter osw = new OutputStreamWriter(fos, "GBK");
    10. BufferedWriter bw = new BufferedWriter(osw);
    11. bw.write("这是中文");
    12. bw.close();

    P166 对象序列化、反序列化

    ObjectOutputStream、ObjectInputStream

    被序列化的对象,属性增加修饰符transient,可以忽略使此属性在序列化后为null(常用于敏感信息)

    被序列化的对象,必须实现接口Serializable

    1. // 序列化
    2. Book book = new Book("name");
    3. ObjectOutputStream objectOutputStream = new ObjectOutputStream(new FileOutputStream("test.txt"));
    4. objectOutputStream.writeObject(book);
    5. objectOutputStream.close();
    6. // 反序列化
    7. ObjectInputStream objectInputStream = new ObjectInputStream(new FileInputStream("test.txt"));
    8. Object o = objectInputStream.readObject();
    9. objectInputStream.close();
    10. System.out.println(o);

    P167 打印流、Properties、commons-io框架

    打印流:PrintStream(字节)、PrintWriter(字符)

    1. PrintStream printStream = new PrintStream("test.txt");
    2. printStream.println("test");
    3. printStream.flush();

    改变输出语句的位置到文件

    1. PrintStream ps = new PrintStream("log.txt");
    2. System.setOut(ps);
    3. System.out.println("test"); // 现在不会输出到console,会出现在log.txt文件中

    Properties类

    1. Properties properties = new Properties();
    2. properties.setProperty("key1", "value1");
    3. properties.store(new FileWriter("user.properties"), "备注信息");

    commons-io框架(推荐使用)

  • 相关阅读:
    Linux(Ubuntu)系统如何安装Python
    Git版本控制管理——版本库管理
    MySQL下载安装使用-完整详细步骤
    圣杯布局与双飞翼布局
    独角兽资深架构师用7大部分13章节,彻底讲透SpringBoot生态体系
    String类常见构造方法大全(Java)
    c++基础代码备忘录-指针与数组
    vivado产生报告阅读分析11-时序报告7
    奇搜宝在线字典微信小程序 v1.0
    Nand Flash基本认识
  • 原文地址:https://blog.csdn.net/qq_17613195/article/details/125508745