首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java帮助(FileStream)

Java帮助(FileStream)
EN

Stack Overflow用户
提问于 2012-08-23 05:45:07
回答 2查看 88关注 0票数 0

我想在输入另一个字符后执行记事本(C:\a.txt)。

这段代码使用记事本打开a.txt,但是当我写" Java“时,我想要显示我的控制台Java。在我写完“then Java”之后,我想向我的控制台展示Java then Java“。

代码语言:javascript
复制
Process process = Runtime.getRuntime().exec("notepad.exe C:\\a.txt");
InputStreamReader read = new InputStreamReader(process.getInputStream());
while(read.read() != -1){
System.out.println(read.read());
}
EN

回答 2

Stack Overflow用户

发布于 2012-08-23 05:48:03

您将无法以这种方式阅读Notepad中发生的事情。

getInputStream()/getOutputStream允许您对进程的standard input and output进行写入和读取,但这些流通常与桌面应用程序的用户界面无关。记事本不会将其用户界面中发生的事情回显到这些流中。

您可以监视文件系统中对a.txt的更改,但这假设您在记事本中每次更改后都会保存该文件。

票数 1
EN

Stack Overflow用户

发布于 2012-08-23 05:49:23

如果要在打开文件时检测更改,可以使用https://blogs.oracle.com/thejavatutorials/entry/watching_a_directory_for_changes#register,然后使用提供的代码重新读取文件

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12081861

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档