| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> Java IO流相关笔记 -> 正文阅读 |
|
[Java知识库]Java IO流相关笔记 |
1、File 类? ? ? ? 1)创建方式: ? ? ? ? ? ? ? ? File file = new File( " 相对路径 " );????????File file = new File( " 父路径 ",“ 子路径 ”?); ????????????????主方法: 工程下????????????????测试方法: 模块下 ? ? ? ? 2)获取路径: ? ? ? ? ? ? ? ? a .?xx.class.getResource("相对路径").getPath() 是在同包下 ? ? ? ? ? ? ? ? b .?xx.class.getClassLorder().getResource("相对路径").getPath() 是在 src 文件下 ? ? ? ? 3)常用API ????????????????File getAbsoluteFile() - 获取绝对路径 2、I O 流 类? ? ? ? 1)字节流 : 做文本文件的复制比较合适 ? ? ? ? 2)缓存字节流:BufferedInputStream /?BufferedOutputStream ? ? ? ? ? ? ? ? 在磁盘和内存中出现缓存区,记得手动 flush()刷新缓存区,不然可能操作失败。 ? ? ? ? 3)字符流 Reader / Writer ? ? ? ? ? ? ? ? a . 底层字符流 :InputStreamReader / OutputStreamWriter ????????????????????????和字节流差不多,记得手动刷新 ? ? ? ? ? ? ? ? ? ? ? ? 可以读取和写入单个字符 ? ? ? ? ? ? ? ? b . 缓存字符流: ? ? ? ? ? ? ? ? ? ? ? ? BufferedReader :第二层可追加编码方式
? ? ? ? ? ? ? ? ? ? ? ? PrintWriter:第一层追加是否自动刷新:碰到 println 触发,否则还是得手动调用 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?第二层追加编码方式? ? ? ? 第三层追加是否追加写入文件
3、对象流? ? ? ? ObjectInputStream / ObjectOutputStream ????????序列化: 对象 -> 文件[字节] ????????实现Serializable接口 ????????关键词:?serialVersionUID : 版本序列号 保证类序列版本号一致,这样改变后也不会出错 ? ? ? ? ? ? ? ? ? ? ?transient 修饰使不可见 ????????反序列: 文件[字节] -> 对象 ???????????????????????? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 5:35:20- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |