You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Java实现命令行下的文件读写?附Python/C参考代码

对应Python/C功能的Java实现方案

用户已有实现命令行参数读取、文件读写功能的Python和C代码,希望得到等价的Java实现,并询问Java中是否存在类似Python open() 或C fopen() 的直接文件打开方式。

Java等价实现代码

public class FileProcessor {
    public static void main(String[] args) {
        // 打印命令行参数信息
        System.out.println("#ARGS = " + args.length);
        System.out.println("PROGRAM = " + args[0]);
        System.out.println("ARG1 = " + args[1] + ", ARG2 = " + args[2]);

        // 用try-with-resources自动管理文件资源,无需手动调用close()
        try (java.io.BufferedReader input = new java.io.BufferedReader(new java.io.FileReader(args[1]));
             java.io.BufferedWriter output = new java.io.BufferedWriter(new java.io.FileWriter(args[2]))) {
            
            // 示例读写逻辑:逐行读取输入文件并写入输出文件
            String line;
            while ((line = input.readLine()) != null) {
                output.write(line);
                output.newLine();
            }

        } catch (java.io.IOException e) {
            e.printStackTrace();
        }
    }
}

Java文件操作说明

Java中没有像Python open() 或C fopen() 那样的全局函数,而是通过IO类库实现文件操作:

  • 针对文本文件:使用FileReader(只读)、FileWriter(只写),通常包装BufferedReader/BufferedWriter提升读写效率
  • 针对二进制文件:使用FileInputStream/FileOutputStream
  • Java 7及以上推荐使用try-with-resources语法,它会自动关闭所有实现AutoCloseable接口的资源,避免手动调用close()导致的资源泄漏问题

内容的提问来源于stack exchange,提问作者Martin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 02:09:10