【学习总结|DAY020】Java FIle、字符集、IO流

今天学习了Java中存储和读写数据的重要工具:File和IO流。这两者相辅相成,共同构成了Java处理文件和数据的基石。

File:文件操作利器

File类代表文件和目录路径名,可以用来获取文件信息、创建/删除文件/目录、判断文件类型等。

  • 路径: 分为绝对路径和相对路径,绝对路径从盘符开始,相对路径不带盘符,默认到当前工程下寻找文件。
  • 信息获取: 可以获取文件名、大小、最后修改时间等信息。
  • 创建和删除: 可以创建文件和目录,但默认只能删除空目录和文件。
  • 遍历文件夹: 可以获取文件夹下所有一级文件和目录的路径,但不能递归遍历。

IO流:读写数据通道

IO流是读写数据的通道,可以读写文件、网络中的数据等。根据内容分为字节流和字符流,根据方向分为输入流和输出流。

  • 字节流: 以字节为单位读写数据,适合处理所有类型的文件,例如音频、视频、图片等。
  • 字符流: 以字符为单位读写数据,适合处理文本文件,例如txt、java文件等。
  • 缓冲流: 内置缓冲区,可以提高读写效率,例如BufferedReader、BufferedWriter等。
  • 转换流: 解决不同编码时字符流读取文本内容乱码的问题,例如InputStreamReader、OutputStreamWriter等。
  • 打印流: 提供更方便、更高效的打印数据功能,例如PrintStream、PrintWriter等。
  • 数据流: 允许把数据和其类型一并写出去,例如DataInputStream、DataOutputStream等。
相关推荐
ShineWinsu5 小时前
对于Qt:QDial常见属性以及信号的解析
开发语言·c++·qt·gui·客户端·旋钮·qdial
Java后端的Ai之路8 小时前
RAG 还是 Agent 自主检索?Claude Code 删掉向量库之后,我把选型讲透了
开发语言·人工智能·prompt·agent·rag
starzy19908 小时前
深入理解Scala高阶函数:函数式编程核心
开发语言·scala
2601_9621066412 小时前
【Java Set综合实战】商品管理系统 + 图书收藏系统|Product、Book自定义类全套代码
java
RuoyiOffice13 小时前
SpringBoot+Vue3 凭证生命周期设计:审核、过账、冲销与反过账怎样保持账目一致
java·spring boot·事务·springboot3·财务系统·会计凭证·ruoyi office
2601_9621066414 小时前
HashMap入门|工号-姓名键值存储、两种遍历方式、根据key/value查
java
czq_268671948714 小时前
Python打卡第46天
开发语言·python
杨凯凡14 小时前
Spring Framework 7 API 版本管理实战:请求头路由、兼容迁移与废弃策略
java·rest api·springframework·spring boot 4·api版本管理
T_Wizard15 小时前
同一个问题写了 4 遍:官方 SDK / HTTP / Spring AI / LangChain4j,到底该选哪个
java·ai编程
hai_android15 小时前
AudioTrack 深度解析:从原理到实战
android·java·kotlin