Java 将字符添加到BufferedReader中
我想创建模拟测试,将文件值读入JUnit测试 我用这个代码来读文本代码Java 将字符添加到BufferedReader中,java,junit,junit4,nio,Java,Junit,Junit4,Nio,我想创建模拟测试,将文件值读入JUnit测试 我用这个代码来读文本代码 BufferedReader cpuReader = new BufferedReader(new InputStreamReader(new FileInputStream("/opt/test"))); 为了创建JUnit测试,我需要添加一些虚拟数据,这些数据需要保存到Java缓冲区中。举个例子(这是完全错误的),我想这样做: BufferedReader cpuReader = new BufferedReader(
BufferedReader cpuReader = new BufferedReader(new InputStreamReader(new FileInputStream("/opt/test")));
为了创建JUnit测试,我需要添加一些虚拟数据,这些数据需要保存到Java缓冲区中。举个例子(这是完全错误的),我想这样做:
BufferedReader cpuReader = new BufferedReader():
cpuReader.addText("Some text");
// process further this data
当我初始化对象BufferedReader()时,您能告诉我向变量cpuReader中添加一些文本的正确方法吗?您可以使用将文本添加回流中:
String textToAdd = "Some text";
PushbackReader cpuReader = new PushbackReader(
new BufferedReader(new InputStreamReader(new FileInputStream("/opt/test"))),
textToAdd.length());
cpuReader.unread(textToAdd.toCharArray());
您可以使用将文本添加回流中:
String textToAdd = "Some text";
PushbackReader cpuReader = new PushbackReader(
new BufferedReader(new InputStreamReader(new FileInputStream("/opt/test"))),
textToAdd.length());
cpuReader.unread(textToAdd.toCharArray());
你应该这样做:
String str = "The string you want for your output";
BuffereReader r = new BufferedReader(new StringReader(str))
PipedReader pipeR = new PipedReader();
BufferedReader br = new BufferedReader(pipeR);
尽量不要模拟文件,这有很多缺点。您应该这样做:
String str = "The string you want for your output";
BuffereReader r = new BufferedReader(new StringReader(str))
PipedReader pipeR = new PipedReader();
BufferedReader br = new BufferedReader(pipeR);
尽量不要模拟文件,这有很多缺点。下面是使用
请注意,一旦您创建了
cupReader
,您就可以像以前一样使用它,而不管它是基于StringReader
的,下面是一个使用的示例:
请注意,一旦创建了
cupReader
,您就可以像以前一样使用它,而不管它是基于StringReader
的,另一种方法是将BufferedReader与PipedReader连接起来,如下所示:
String str = "The string you want for your output";
BuffereReader r = new BufferedReader(new StringReader(str))
PipedReader pipeR = new PipedReader();
BufferedReader br = new BufferedReader(pipeR);
然后将PipedWriter与PipedWriter连接,如中所示:
// create a new Piped writer and reader
PipedWriter writer = new PipedWriter();
// connect the reader and the writer
pipeR.connect(writer);
现在(以动态方式),无论您使用writer-write方法写入什么数据,您都可以通过BufferedReader读取数据。另一种方法是将BufferedReader与PipedReader连接起来,如下所示:
String str = "The string you want for your output";
BuffereReader r = new BufferedReader(new StringReader(str))
PipedReader pipeR = new PipedReader();
BufferedReader br = new BufferedReader(pipeR);
然后将PipedWriter与PipedWriter连接,如中所示:
// create a new Piped writer and reader
PipedWriter writer = new PipedWriter();
// connect the reader and the writer
pipeR.connect(writer);
现在(以动态方式),无论您使用writer-write方法写入什么数据,您也可以通过BufferedReader读取它请使用?任何示例?请使用?任何示例?我不明白您的想法。还有什么消息吗?我想我误读了你想做的事。我以为你想在从文件中读取的数据前加前缀。如果你想完全绕过这个文件,可以像其他答案所说的那样使用StringReader。我不明白你的想法是什么。还有什么消息吗?我想我误读了你想做的事。我以为你想在从文件中读取的数据前加前缀。如果您想完全绕过该文件,请按照其他答案使用StringReader。