CodeGym
AI Academy
促销
CodeGym University
学习
课程
任务
调查 & 测验
游戏
帮助
日程
社区
Users
论坛
聊天
文章
成功故事
动态
评价
订阅
浅色主题

课时

  • 评论
  • 关于我们
开始
开始学习
立即开始学习
  • 我的进度
  • 课程
  • 任务地图
  • 课程
  • BufferedReader, BufferedWriter:缓冲与优势

    JAVA 25 SELF
    等级 36,课时 0
    为什么用“茶匙”式地读写文件代价高:我们来解析缓冲如何加速 Java 的文本 I/O。将看看 BufferedReader 与 BufferedWriter 如何构建在 FileReader/ FileWriter 之上,使用 readLine() 进行按行读取,使用 write()/ newLine() 写入与换行,必要时通过 flush() 强制刷新,设置缓冲区大小,并通过 InputStreamReader/ OutputStreamWriter 处理字符编码。何时应使用缓冲、何时不必用,以及最常见的错误。
    可用
  • 读取文本文件:逐行与整文件

    JAVA 25 SELF
    等级 36,课时 1
    本讲解将介绍使用 BufferedReader 的逐行读取,以及通过 Files.readAllLines/ Files.readString 的整文件读取,如何选择缓冲区(例如 8192 字节)、如何借助 try-with-resources 安全关闭资源,以及如何处理字符编码( StandardCharsets.UTF_8)。还展示了实用示例(统计行数、日志搜索、解析配置)和常见错误(例如在整读超大文件时触发 OutOfMemoryError)。
    可用
  • 二进制文件的读写:InputStream、OutputStream

    JAVA 25 SELF
    等级 36,课时 2
    讲解文本文件与二进制文件的区别、字节基础流 InputStream/ OutputStream 及其文件实现( FileInputStream、 FileOutputStream)。编写带缓冲的拷贝,讨论逐字节与分块读取的速度差异,通过 write() 写入字节数组、 try-with-resources 的细节、缓冲区大小的选择 4– 16 KB、安全使用 readAllBytes() 以及常见错误(例如对二进制数据使用 FileReader/ FileWriter)。
    可用
  • DataInputStream, DataOutputStream:处理基本类型

    JAVA 25 SELF
    等级 36,课时 3
    本讲解使用 DataInputStream 和 DataOutputStream 来讲解 Java 中的二进制输入/输出:如何用 writeXXX/ readXXX 方法写入和读取基本类型( int、 double、 boolean)和字符串( String),为什么顺序很重要,如何存储数组,什么时候有必要再加一层 BufferedInputStream/ BufferedOutputStream,以及哪些常见错误会导致 IOException 或 EOFException。
    可用
  • 使用 try-with-resources:自动关闭资源

    JAVA 25 SELF
    等级 36,课时 4
    讲解在 Java 中安全处理资源的现代方式 —— try-with-resources:与旧有模式 try/ catch/ finally + close() 的对比,对类型的要求(实现 AutoCloseable 或 Closeable), try(...){...} 的语法,关闭顺序,通过 getSuppressed() 获取“被抑制”的异常,结合 I/O 流与自定义资源的示例,以及建议与常见错误。
    可用
Learn
  • 注册
  • Java 课程
  • 任务帮助
  • 定价
  • Java 语法
社区
  • 用户
  • 文章
  • 论坛
  • 聊天
  • 成功故事
  • 动态
  • 联盟计划
Company
  • 关于我们
  • 联系方式
  • 评价
  • 媒体中心
  • CodeGym for EDU
  • 常见问题
  • 支持
CodeGymCodeGym 是一个从零开始学习 Java 编程的在线课程。该课程是初学者掌握 Java 的完美方式。它包含 1200+ 个带即时验证的任务,以及必要的 Java 基础理论。为了帮助你在学习中取得成功,我们实现了一系列激励功能:测验、编码项目、关于高效学习的内容,以及 Java 开发者职业相关内容。
关注我们
界面语言
English Deutsch Español हिन्दी Français Português Polski বাংলা
简体中文
मराठी தமிழ் Italiano Bahasa Indonesia 繁體中文 Nederlands 日本語 한국어 Bulgarian Danish Hungarian Basa Jawa Malay Norwegian Romanian Swedish Telugu Thai Українська Filipino Turkish Azərbaycan Русский Vietnamese
“程序员是培养出来的,不是天生的” © 2026 CodeGym
MastercardVisa
“程序员是培养出来的,不是天生的” © 2026 CodeGym