使用Rhino/JavaScript/Java显示DOS错误消息
我正在尝试使用一个类似于Rhino语言的程序运行DIR命令(该程序使用Java/JavaScript) 如果存在任何语法错误或任何其他错误,我想使用以下函数打印错误消息:使用Rhino/JavaScript/Java显示DOS错误消息,java,javascript,batch-file,rhino,Java,Javascript,Batch File,Rhino,我正在尝试使用一个类似于Rhino语言的程序运行DIR命令(该程序使用Java/JavaScript) 如果存在任何语法错误或任何其他错误,我想使用以下函数打印错误消息: function CatchDOSError() { var ErrorMSG = new java.io.BufferedReader(new java.io.InputStreamReader(java.lang.Runtime.getRuntime().exec("cmd /c dir \\C:\Test\Data /
function CatchDOSError()
{
var ErrorMSG = new java.io.BufferedReader(new java.io.InputStreamReader(java.lang.Runtime.getRuntime().exec("cmd /c dir \\C:\Test\Data /s /b /a-D > c:\Test\fileRunDIR.txt").getErrorStream()));
while (( ErrorMSG.readLine()) != null)
{
println(ErrorMSG);
}
ErrorMSG.close();
}
如果我运行这个函数,我在控制台中得到的所有输出都是:“java.io。BufferedReader@71fbs019“
如果我从CMD手动运行DOS命令,错误消息是“系统找不到路径”。这是我希望使用上述功能显示的错误消息。不确定我的函数是否存在转换问题或错误
感谢您的帮助。如果您愿意,我们将不胜感激
while (( ErrorMSG.readLine()) != null) {
println(ErrorMSG);
}
在检查该行是否为空后,放弃该行,然后打印读取器本身(它不会覆盖toString()
,并且不是该行)。我想你想要
var line = "";
while (( line = ErrorMSG.readLine()) != null) {
println(line);
}
您只是想获取目录中的文件列表,还是专门为CMD编写前端?Elliott Frisch能够回答这个问题。