问题描述:有两个文件context.txt和words.conf,请尝试将他们合并成为一段文字,并打印出来。
这两个文件内容如下:
context.txt
“并不是每个人都需要$(qunar)自己的粮食,$(flight.1)每个人都需要做自己穿的$(flight.2),我们说着别人发明的$(hotel),使用别人发明的数 学……我们一直在$(tuan)别人的成果。使用人类的已有经验和知识$(travel.1)来进行,是一件$(travel.2)的事情”
word.conf
flight=也不是:衣服
qunar=种植
hotel=语言
tuan=使用
travel=发明创造:很了不起
问题分析:这道题的解决方案有多种,我们可以使用多种IO流来实现,这里我们推荐使用BufferReader缓冲流来实现,每次都读取一行。
代码实现:
package com.yonyou.test;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URISyntaxException;
/**
* 测试类
* @author 小浩
* @创建日期 2015-4-18
*/
public class Test{
public static void main(String[] args) throws IOException{
new Test().test();
}
/**
* @throws IOException
* @throws URISyntaxException
* @throws MalformedURLException
*/
public void test() throws IOException {
// FileInputStream fis1=new FileInputStream("../context.txt");
// FileInputStream fis2=new FileInputStream("word.conf");
BufferedReader br1=new BufferedReader(new FileReader("src2/com/yonyou/test/context.txt"));
BufferedReader br2=new BufferedReader(new FileReader("src2/com/yonyou/test/word.conf"));
StringBuffer sb=new StringBuffer();
String temp=null;
while((temp=br1.readLine())!=null)
{
sb.append(temp+"
");
}
while((temp=br2.readLine())!=null)
{
sb.append(temp+"
");
}
System.out.println(sb);
}
}