我有一个Java文件,我在命令行中运行,如下所示:
Java program_file_name<input.txt>output.txt
Java文件中的Scanner类接受一个文本文件作为输入,我希望它生成一个文本文件作为输出,非常标准的东西。
我查看了以下页面: How do you input commandline argument in IntelliJ IDEA?
并尝试了
<input.txt>output.txt
进入运行/调试配置中的程序参数字段。输出似乎没有显示在output.txt中,它在命令行中运行正常,我做错了什么?
答案 0 :(得分:2)
问题是你在命令行中执行的是执行 shell命令,它将输入和输出重定向到/到文件。另一方面,java run / debug不执行shell命令,而是使用传递的参数运行选定的 class 。而你所做的就是你传递单个参数<input.txt>output.txt
。但它不会重定向任何东西。
您可以做的是修改它接受参数的类 - 要读取/写入的文件。我发现一个IntelliJ plugin添加了新的调试配置,可以指定要重定向的文件输入。但这只是你要求的一半。