如何通过终端将文本文件输入到java程序中(就像在C ++中一样)?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何通过终端将文本文件输入到java程序中(就像在C ++中一样)?相关的知识,希望对你有一定的参考价值。
如果我做
$ java ProgramName string1 string2 string3
从linux终端,ProgramName使用main(String arg[])
通过arg[i]
获取string1 string2 string3,一切都很好。
这就是我想要做的事情:我没有在终端输入string1 string2 string3
,而是想输入
$ java ProgramName < input.txt
其中“input.txt”包含string1,string2和string3
编辑:“input.txt”在单独的行上有一个单词,在行的末尾有一个'enter'
string1
string2
stringn
这可以用C ++来完成;它可以在Java中类似地完成吗?
答案
你可以做:
export parameters=`cat file.txt`
java programname $parameters
注意反向`(不是')
甚至:
java programname `cat file.txt`
另一答案
请使用此命令:
java MyProg "$(cat file.txt | tr '
' ' ')"
如果它不起作用,请检查源文件中是否正确定义了参数。
另一答案
由于您要将文件重定向到程序的标准输入,因此可以尝试以下操作:
Scanner in = new Scanner(System.in);
String line = new String();
while(in.hasNext())//while there are lines on the file
{
line = in.nextLine();//read the line
//do stuff here
}
以上是关于如何通过终端将文本文件输入到java程序中(就像在C ++中一样)?的主要内容,如果未能解决你的问题,请参考以下文章
用VC写了一个文本编辑器,怎样将输入里面的关键字变色实现高亮状态,就像在VC里面写代码输入C++关键字那样