Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $YECBGYFECGEAFWHA as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2

Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $BBWFDDBHHYHDXXAB as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2
Java开发图书借还日志程序_IO流入门实战讲解_创想鸟

Java开发图书借还日志程序_IO流入门实战讲解

答案:通过Java的FileWriter和BufferedReader实现图书借还日志记录与读取,使用缓冲流提升效率,结合try-with-resources自动管理资源,完成日志追加、换行及异常处理,适用于小型系统文件操作。

java开发图书借还日志程序_io流入门实战讲解

做Java开发时,文件操作是绕不开的基础技能。尤其在小型管理系统中,比如图书借还系统,用IO流记录日志既简单又实用。今天就带你用Java实现一个图书借还日志程序,从零开始讲解IO流的入门应用。

1. 明确需求:图书借还要记什么?

我们要记录每次图书借出和归还的操作,至少包括:

操作类型(借书 / 还书) 图书名称 借阅人姓名 操作时间

这些信息可以写入一个文本文件,比如 log.txt,每条记录占一行,便于查看和追加。

2. 使用 FileWriter 和 BufferedWriter 写日志

Java中向文件写数据,常用 FileWriter 配合 BufferedWriter 提升效率。下面是一个记录借书日志的方法示例:

立即学习“Java免费学习笔记(深入)”;

import java.io.*;import java.time.LocalDateTime;public class BookLogger {    private static final String LOG_FILE = "log.txt";    public static void logBorrow(String bookName, String borrower) {        try (BufferedWriter writer = new BufferedWriter(new FileWriter(LOG_FILE, true))) {            String log = String.format("[%s] 借书: 《%s》, 借阅人: %s",                    LocalDateTime.now(), bookName, borrower);            writer.write(log);            writer.newLine(); // 换行            System.out.println("借阅日志已记录");        } catch (IOException e) {            System.err.println("写入日志失败:" + e.getMessage());        }    }}

注意点:

稿定抠图 稿定抠图

AI自动消除图片背景

稿定抠图 76 查看详情 稿定抠图 true 参数表示追加模式,不会覆盖原内容 try-with-resources 自动关闭流,避免资源泄漏 newLine() 方法跨平台换行,比写 n 更安全

3. 用 FileReader 和 BufferedReader 查看日志

除了写,我们还需要读取日志进行核对。使用 BufferedReader 逐行读取更高效:

public static void showLogs() {    try (BufferedReader reader = new BufferedReader(new FileReader(LOG_FILE))) {        String line;        System.out.println("=== 借还日志 ===");        while ((line = reader.readLine()) != null) {            System.out.println(line);        }    } catch (FileNotFoundException e) {        System.out.println("日志文件不存在,暂无记录。");    } catch (IOException e) {        System.err.println("读取日志失败:" + e.getMessage());    }}

当文件不存在时会抛出 FileNotFoundException,提前捕获能让提示更友好。

4. 完整小例子:模拟一次借还流程

把上面方法组合起来,做个简单测试:

public static void main(String[] args) {    logBorrow("Java编程思想", "张三");    logBorrow("深入理解JVM", "李四");    logReturn("Java编程思想", "张三"); // 还书方法结构类似    showLogs();}

运行后你会在项目根目录看到 log.txt,内容类似:

[2025-04-05T10:20:30.123] 借书: 《Java编程思想》, 借阅人: 张三
[2025-04-05T10:20:31.456] 借书: 《深入理解JVM》, 借阅人: 李四
[2025-04-05T10:20:32.789] 还书: 《Java编程思想》, 归还人: 张三

基本上就这些。这个小项目帮你掌握了FileWriter、FileReader、缓冲流的使用,也理解了try-with-resources和异常处理的实际意义。不复杂但容易忽略细节,比如追加模式和自动关流。练一遍,IO流就不怕了。

以上就是Java开发图书借还日志程序_IO流入门实战讲解的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1022328.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
css表单验证状态如何用颜色表示
上一篇 2025年12月2日 01:27:40
如何在Golang中理解defer延迟执行机制_Golangdefer延迟执行方法汇总
下一篇 2025年12月2日 01:27:41

相关推荐

发表回复

登录后才能评论
关注微信