【问题标题】:How can I read the arguments from a text file while running java运行java时如何从文本文件中读取参数
【发布时间】:2015-01-15 17:32:06
【问题描述】:

我有下面的代码

public class prob01 {
    public static void main (String arg[]) {
        System.out.println(arg[0]);
    }
}

我在同一目录中有一个文本文件 prob01.txt,其中包含:
StackOverflow StackExchange

当我将参数作为 prob01.txt 如下所示时,如何从上面的代码中获得 StackOverflow 的输出:(我不想修改 java 代码,dos 必须小心解析文件并将内容作为参数发送)

C:\> javac prob01.java
C:\> java -cp . prob01 < prob01.txt

【问题讨论】:

  • “我不想修改 java 代码”——你必须这样做。您显示的命令提供文件内容作为标准输入,not 作为命令行参数。我认为 Windows 命令 shell 中没有任何东西可以读取文件并将其内容用作另一个命令的命令行参数。
  • 我们没有
  • 再次,将文件的文本重定向到标准输入,到命令行参数。 (因此,如果您从System.in 阅读,您将获得内容。)
  • 您应该能够搜索正确的 dos 批处理文件命令以从文本文件中读取环境变量,然后将这些变量作为命令行参数运行。
  • 大胆猜测,因为我正在运行 Linux,请参阅 stackoverflow.com/questions/5886334/… 从文件中创建变量 input。和java -cp . prob01 %input%%input% 作为参数运行Java?我不确定这是否有效......

标签: java file arguments


【解决方案1】:

您需要在 java 代码中使用 Reader 来读取文件的内容。

【讨论】:

  • 我不想修改代码。解析只能在 cmd 提示符下完成
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-12-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-14
  • 1970-01-01
相关资源
最近更新 更多