音乐播放器
琢钰
 
文章 标签
12

Powered by X2 | Theme: Fog
载入天数...
载入时分秒...
总访问量:  |   访问人数:
御风飞行中...

总复习07-IO流

  热度: loading...

java路径两种写法"/"和"\\"

最好用/,跨平台都可使用

四大抽象类

输入流 输出流
字节流 InputStream OutputStream
字符流 Reader Writer

理解操作步骤

  1. 创建源
  2. 选择流
  3. 操作
  4. 释放资源
/*
 * Copyright (c) 2019.
 * All Rights Reserved,Designed By Mingyu Xiong
 */

package com.ychs.io;

import java.io.*;

/**
 * @author Mingyu Xiong
 * @description:
 * @date 2019/07/30 16:57
 */
public class IOTest01 {
    public static void main(String[] args) {
        //1.创建源
        File src = new File("E:/repo/Java1014/Java/Day17/abc.txt");
        //2.选择源
        InputStream is = null;
        try {
            is = new FileInputStream(src);
            //3.操作(读取)
            int temp;
            while ((temp = is.read()) != -1) {
                System.out.println((char)temp);
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }finally {
            //4.释放资源
            try {
                if (null != is) {
                    is.close();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}

瞬态关键字transient

只要被transient修饰了,序列化时这个属性就不会被序列化了。
同时静态修饰也不会被序列化,因为序列化是把对象数据进行持久化存储,而静态的属于类加载时的数据,不会被序列化。

Serializable序列化接口

当一个对象要能被序列化,这个对象所属的类必须实现Serializable接口。否则会发生异常NotSerializableException异常。

Properties类

1 Properties 类表示了一个持久的属性集。Properties 可保存在流中或从流中加载。属性列表中每个键及其对应值都是一个字符串

2 特点

  • Hashtable的子类,Map集合中的方法都可以用
  • 该集合没有泛型,键值都是字符串
  • 它是一个可以持久化的属性集
  • 方法
load(InputStream) 把指定流所对应的文件中的数据读取出来,保存到Properties集合中
load(Reader)  
store(OutputStream,comments)把集合中的数据,保存到指定的流所对应的文件中,
参数comments代表对描述信息
store(Writer,comments);

3 Properties集合,它是唯一一个能与IO流交互的集合

  • 添加和获取元素的方法
put(key,value)
public Object setProperty(String key, String value)调用 Hashtable的方法put
public Set<String> stringPropertyNames()返回此属性列表中的键集
public String getProperty(String key)用指定的键在此属性列表中搜索属性

4 将Properties属性集合中内容存储到文件

  • 创建Properties集合
  • 添加元素到集合
  • 创建流
  • 把集合中的数据存储到流所对应的文件中
  • 关闭流

5 读取属性文件中的数据,并保存到Properties集合中

  • 创建集合
  • 创建流对象
  • 把流所对应文件中的数据读取到集合中
  • 关闭流
  • 显示集合中的数据