考虑制作一个程序,无论我在文本文件上写什么,它都应该出现在控制台上 做了这个程序
import java.io.*;
class Redirector
{
public static void main(String[] args) {
try
{
if(args.length!=1)
{
throw(new Exception("wrong way"));
}
System.setIn(new FileInputStream("b.txt"));
BufferedReader r=new BufferedReader(new InputStreamReader(System.in));
PrintStream x=new PrintStream(new FileOutputStream(args[0]));
System.out.println("enter text,end to terminanate");
while(true)
{
String str=r.readLine();
if(!str.equalsIgnoreCase("end"))
System.out.println(str);
else
break;
}
System.out.println("done");
}
catch(Exception e)
{
System.out.println(e);
}
}
}
但问题是我想要我在文件上动态编写的内容并按回车键应该出现在控制台上,而在这种情况下它应该被保存
答案 0 :(得分:4)
您所要求的是不可能的。只要您不保存文本文件,其内容实际上不在磁盘上,它们只在内存中。
你理论上可以尝试在你用来编辑文本文件的任何程序的已分配内存中访问它,但这非常困难,因为它需要知道它的布局记忆块。此外,这是一个巨大的安全风险,因此大多数现代操作系统都会确保您无法做到。