Reader reader = new FileReader(path1);
Writer writer = new FileWriter(path2);
Reader read = new FileReader(path);
BufferedReader br = new BufferedReader(read);
//合并两个流
private static void testSequenceInputStream() throws IOException {
FileInputStream fis1 = new FileInputStream(“c:\a.txt”);
FileInputStream fis2 = new FileInputStream(“c:\b.txt”);
SequenceInputStream s1 = new SequenceInputStream(fis1, fis2);
int len = 0;
byte[] byt = new byte[1024];
FileOutputStream fos = new FileOutputStream(“c:\z.txt”);
while ((len = s1.read(byt)) != -1) {
fos.write(byt, 0, len);
}
s1.close();
}
//合并多个流
public static void testSequenceInputStream() throws Exception {
InputStream in1 = new FileInputStream(“c:/a.txt”);
InputStream in2 = new FileInputStream(“c:/b.txt”);
InputStream in3 = new FileInputStream(“c:/c.txt”);
LinkedHashSet set = new LinkedHashSet();
set.add(in1);
set.add(in2);
set.add(in3);
final Iterator iter = set.iterator();
SequenceInputStream sin = new SequenceInputStream(
new Enumeration() {
@Override
public boolean hasMoreElements() {
return iter.hasNext();
}
@Override
public InputStream nextElement() {
return iter.next();
}
});
FileOutputStream out = new FileOutputStream(“c:/z.txt”);
for (int b = -1; (b = sin.read()) != -1;) {
out.write(b);
}
sin.close();
out.close();
}