java 运行命令行jar怎么读输出,输入指令 RT,要持续永久的。研究了好久就是找不到解决办法 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 看看这两个:java.io.ConsoleSystem.console() 看看这两个:java.lang.ProcessBuilderjava.lang.Process String cmd = "aaa bbb";OutputStream os = new OutputStream(myprocess.getOutputStream());os.write(cmd.getBytes(charset))os.flush();//然后再读取 首先,我运行了一个cmd然后我直接get到了的OutputStream。。 写出命令charset是什么。尝试用了charset.defaultCharset()写出刷新后没用。读的是空的 .getOutputStream()得到的是是用于发送命令的流。in和out是对于本进程来说的。charset是"UTF-8"、"GBK"等等。如果你的命令中没有中文字符,就无所谓了,哪种字符集都可以。 我看错了。.getOutputStream()你用的是对的。charset是"UTF-8"、"GBK"等等。如果你的命令中没有中文字符,就无所谓了,哪种字符集都可以。读的是空的。没源代码没法判断。方法就是这样了。 这是我写来测试的=。=后面那个ProcessBuilder builder = new ProcessBuilder("cmd");Process proc = builder.start();InputStream is = proc.getInputStream();BufferedReader d = new BufferedReader(new InputStreamReader(is, "gbk"));while((str = d.readLine()) != null) { System.out.print(str + "\n");} OutputStream os = proc.getOutputStream();String cmd = "tasklist";os.write(cmd.getBytes());os.flush(); while((str = d.readLine()) != null) { System.out.print(str + "\n");} 后面那个tasklist没取到数据回来=。= getClass的类型转换异常? 如何访问不同包的类成员方法 关于三目运算符的问题~ 这个方法为什么会提示返回类型出错 在eclipse 下面,为什么编写的C/S架构的软件编译后无法运行,是不是eclipse在编译C/S架构软件时需要一个插件呢?很急!!!!请教!!! 如何创建模板的实例 汗。。。请问怎么往文件里写一个双引号(") 为什么我生成的jar文件不能用。 把字符串转换成十六进制的问题? 28!计算结果是错的!为何? 需要一个完成的java操作数据库代码 小伙伴们帮帮忙
java.io.Console
System.console()
java.lang.ProcessBuilder
java.lang.Process
String cmd = "aaa bbb";
OutputStream os = new OutputStream(myprocess.getOutputStream());
os.write(cmd.getBytes(charset))
os.flush();
//然后再读取
然后我直接get到了的OutputStream。。 写出命令
charset是什么。尝试用了charset.defaultCharset()
写出刷新后
没用。读的是空的
.getOutputStream()你用的是对的。charset是"UTF-8"、"GBK"等等。如果你的命令中没有中文字符,就无所谓了,哪种字符集都可以。读的是空的。没源代码没法判断。
方法就是这样了。
后面那个ProcessBuilder builder = new ProcessBuilder("cmd");
Process proc = builder.start();
InputStream is = proc.getInputStream();
BufferedReader d = new BufferedReader(new InputStreamReader(is, "gbk"));while((str = d.readLine()) != null) {
System.out.print(str + "\n");
}
OutputStream os = proc.getOutputStream();
String cmd = "tasklist";
os.write(cmd.getBytes());
os.flush();
while((str = d.readLine()) != null) {
System.out.print(str + "\n");
}