```clike
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class HomeWork {
public static void main(String[] args) throws Exception {
File f=new File("E://HomeWork/水浒传.txt");
File newFile=new File("E://HomeWork/作业");
newFile.mkdir();
FileReader fr=new FileReader(f);
BufferedReader br=new BufferedReader(fr);
String sr="";
int length=0;
while((sr=br.readLine())!=null){
length++;
File file=new File(newFile,length+".txt");
file.createNewFile();
if(!sr.equals("")){
outPutThread opt=new outPutThread(sr,file);
opt.start();
}else{
length--;
}
}br.close();
}
}
/ 思考使用多线程 每一个线程需要执行的功能=>将字符串写入指定文件中
//创建一个 outPutThread 类,同时继承于Thread
class outPutThread extends Thread{
//属性 读取的内容、读取的位置
String sr;
File f;
//构造方法,目的是把数据传入进来
public outPutThread(String sr, File f){
super();
this.sr=sr;
this.f=f;
}
//重写run方法
@Override
public void run() {
try {
//输出流
FileWriter fw=new FileWriter(f);
BufferedWriter bw=new BufferedWriter(fw);
bw.write(sr);
bw.flush();
bw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}