算法

来源:互联网 发布:网络电视32寸多少钱 编辑:程序博客网 时间:2024/05/16 08:31

packagecn.itcast;

import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;

public class MainClass{
public static voidmain(String[] args) throws Exception{
FileManager a= new FileManager(“a.txt”,new char[]{‘\n’});
FileManager b= new FileManager(“b.txt”,new char[]{‘\n’,’ ‘});
FileWriter c= new FileWriter(“c.txt”);
String aWord= null;
String bWord= null;
while((aWord= a.nextWord()) !=null ){
c.write(aWord+ “\n”);
bWord= b.nextWord();
if(bWord!= null)
c.write(bWord+ “\n”);
}

while((bWord= b.nextWord()) != null){
c.write(bWord+ “\n”);
}
c.close();
}

}

class FileManager{

String[] words =null;
int pos = 0;
publicFileManager(String filename,char[] seperators) throws Exception{
File f = newFile(filename);
FileReaderreader = new FileReader(f);
char[] buf =new char[(int)f.length()];
int len =reader.read(buf);
Stringresults = new String(buf,0,len);
String regex= null;
if(seperators.length>1 ){
regex= “” + seperators[0] + “|” + seperators[1];
}else{
regex= “” + seperators[0];
}
words =results.split(regex);
}

public StringnextWord(){
if(pos ==words.length)
returnnull;
returnwords[pos++];
}

}

0 1
原创粉丝点击