Skip to content

Commit 8228e34

Browse files
author
eugenp
committed
minor doc change
1 parent bc29b04 commit 8228e34

File tree

1 file changed

+49
-0
lines changed

1 file changed

+49
-0
lines changed

core-java/src/test/java/org/baeldung/java/io/JavaReaderToXUnitTest.java

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,25 @@
11
package org.baeldung.java.io;
22

3+
import java.io.File;
4+
import java.io.FileReader;
5+
import java.io.FileWriter;
36
import java.io.IOException;
47
import java.io.Reader;
58
import java.io.StringReader;
9+
import java.io.Writer;
10+
import java.nio.charset.Charset;
611

12+
import org.apache.commons.io.FileUtils;
713
import org.apache.commons.io.IOUtils;
14+
import org.apache.commons.io.input.CharSequenceReader;
815
import org.junit.Test;
916
import org.slf4j.Logger;
1017
import org.slf4j.LoggerFactory;
1118

19+
import com.google.common.io.CharSink;
1220
import com.google.common.io.CharSource;
1321
import com.google.common.io.CharStreams;
22+
import com.google.common.io.FileWriteMode;
1423

1524
@SuppressWarnings("unused")
1625
public class JavaReaderToXUnitTest {
@@ -43,4 +52,44 @@ public void givenUsingCommonsIO_whenConvertingReaderIntoString_thenCorrect() thr
4352
initialReader.close();
4453
}
4554

55+
// tests - Reader WRITE TO File
56+
57+
@Test
58+
public void givenUsingPlainJava_whenConvertingReaderIntoFile_thenCorrect() throws IOException {
59+
final File sourceFile = new File("src/test/resources/sourceFile.txt");
60+
sourceFile.createNewFile();
61+
62+
final Reader initialReader = new FileReader(sourceFile);
63+
final char[] buffer = new char[(int) sourceFile.length()];
64+
initialReader.read(buffer);
65+
initialReader.close();
66+
67+
final File targetFile = new File("src/test/resources/targetFile.txt");
68+
targetFile.createNewFile();
69+
70+
final Writer targetFileWriter = new FileWriter(targetFile);
71+
targetFileWriter.write(buffer);
72+
targetFileWriter.close();
73+
}
74+
75+
@Test
76+
public void givenUsingGuava_whenConvertingReaderIntoFile_thenCorrect() throws IOException {
77+
final Reader initialReader = CharSource.wrap("IDDQD").openStream();
78+
final File targetFile = new File("src/test/resources/targetFile.txt");
79+
com.google.common.io.Files.touch(targetFile);
80+
final CharSink charSink = com.google.common.io.Files.asCharSink(targetFile, Charset.defaultCharset(), FileWriteMode.APPEND);
81+
charSink.writeFrom(initialReader);
82+
initialReader.close();
83+
}
84+
85+
@Test
86+
public void givenUsingCommonsIO_whenConvertingReaderIntoFile_thenCorrect() throws IOException {
87+
final Reader initialReader = new CharSequenceReader("CharSequenceReader extends Reader");
88+
final File targetFile = new File("src/test/resources/targetFile.txt");
89+
FileUtils.touch(targetFile);
90+
final byte[] buffer = IOUtils.toByteArray(initialReader);
91+
FileUtils.writeByteArrayToFile(targetFile, buffer);
92+
initialReader.close();
93+
}
94+
4695
}

0 commit comments

Comments
 (0)