Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将字符添加到BufferedReader中_Java_Junit_Junit4_Nio - Fatal编程技术网

Java 将字符添加到BufferedReader中

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(

我想创建模拟测试,将文件值读入JUnit测试

我用这个代码来读文本代码

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。