java中Runtime的输入输出控制如何是好
刚刚接触到Runtime,像dir这样的命令已经会调用了。但是cmd下date存在交互过程(即可以往控制台可以输入新日期来设置),有哪位大虾能Demo一下,如何能正确地调用cmd下的date命令。我主要是想了解一下它的输入输出流的控制,以及如何向外部程序不断输入新的参数(也就是交互式运行)。
我是在Eclipse下编写的,是否需要注意系统默认的InputStream,OutputStream
指定?
希望大虾们在Demo时,能像在cmd下那样的效果:
D:\> date
当前日期: 2007-03-29 星期四
输入新日期: (年月日) asdf
系统无法接受输入的日期。
输入新日期: (年月日) 2007/3/29
D:\>
------解决方案--------------------好题。希望知道的人讲一下。因为这是个很重要的问题。还比如如何实现mysql备份的问题。需要有输入密码。所以请知道的顶一下。
------解决方案--------------------转一个别人告诉我的方法:
Runtime.exec的返回结果是一个Process,
而Process对象有三个方法
getInputStream
getOutputStream
getErrorStream
分别可以取得Process的输入、输出、错误输出流
如果你需要向进程写入参数,可以用getOutputStream取得输出流,然后往输出流里写参数。
提示:你可以用PrintWriter将这个输出流封装一下,使用println方法来输出 ,会方便得多