在 IntelliJ 调试/运行中将字符串缓冲区传递给 java 程序
2022-09-04 22:36:19
如何完成在IntelliJ或Eclipse中的命令行上运行以下行的等效方法....:
java MyJava < SomeTextFile.txt
我试图在IntelliJ中运行/调试配置的程序参数字段中提供文件的位置
如何完成在IntelliJ或Eclipse中的命令行上运行以下行的等效方法....:
java MyJava < SomeTextFile.txt
我试图在IntelliJ中运行/调试配置的程序参数字段中提供文件的位置
正如@Maba所说,我们不能在eclipse/intellij中使用输入重定向运算符(任何重定向运算符),因为没有shell,但你可以通过stdin模拟来自文件的输入读数,如下所示
InputStream stdin = null;
try
{
stdin = System.in;
//Give the file path
FileInputStream stream = new FileInputStream("SomeTextFile.txt");
System.setIn(stream);
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
br.close();
stream.close()
//Reset System instream in finally clause
}finally{
System.setIn(stdin);
}
你不能直接在Intellij中执行此操作,但我正在开发一个插件,该插件允许将文件重定向到stdin。有关详细信息,请参阅我对类似问题的回答[1]或尝试插件[2]。