java

来源:互联网 发布:中国戏曲学院网络 编辑:程序博客网 时间:2024/05/22 15:06

、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。

答:

              package cn.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 = newFileManager("a.txt",new char[]{'\n'});

              FileManager b = newFileManager("b.txt",new char[]{'\n',' '});         

              FileWriter c = newFileWriter("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 = new File(filename);

              FileReader reader = new FileReader(f);

              char[] buf = new char[(int)f.length()];

              int len = reader.read(buf);

              String results = 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;

              return words[pos++];

       }

 

}

 

2、编写一个程序,将d:\java目录下的所有.java文件复制到d:\jad目录下,并将原来文件的扩展名从.java改为.jad

(大家正在做上面这道题,网上迟到的朋友也请做做这道题,找工作必须能编写这些简单问题的代码!)

答:listFiles方法接受一个FileFilter对象,这个FileFilter对象就是过虑的策略对象,不同的人提供不同的FileFilter实现,即提供了不同的过滤策略。

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.FilenameFilter;

import java.io.IOException;

import java.io.InputStream;

import java.io.OutputStream;

 

public class Jad2Java {

 

       public static voidmain(String[] args) throws Exception {

              File srcDir = new File("java");

              if(!(srcDir.exists() && srcDir.isDirectory()))

                            throw new Exception("目录不存在");

              File[] files = srcDir.listFiles(

                     newFilenameFilter(){

 

                                   publicboolean accept(File dir, String name) {

                                          return name.endsWith(".java");

                                   }

                                  

                            }

              );

             

              System.out.println(files.length);

0 0