0

Javaコードから.xlsまたは.xlsxファイルの正確なコピーを作成する必要があります。ファイルには多くのフォーマット、数式、およびマージが含まれているため、そのまま保持する必要があります。アプリケーションは基本的にデスクトップアプリケーションであり、プラットフォームに依存しない必要があります(.batまたは.sh plsは不可)。プログラム的にもパフォーマンス的にも可能な限り最良の方法を提案してください...

import java.io.*;

public class CopyFile{
  private static void copyfile(String srFile, String dtFile){
  try{
  File f1 = new File(srFile);
  File f2 = new File(dtFile);
  InputStream in = new FileInputStream(f1);

  //For Append the file.
//  OutputStream out = new FileOutputStream(f2,true);

  //For Overwrite the file.
  OutputStream out = new FileOutputStream(f2);

  byte[] buf = new byte[1024];
  int len;
  while ((len = in.read(buf)) > 0){
  out.write(buf, 0, len);
  }
  in.close();
  out.close();
  System.out.println("File copied.");
  }
  catch(FileNotFoundException ex){
  System.out.println(ex.getMessage() + " in the specified directory.");
  System.exit(0);
  }
  catch(IOException e){
  System.out.println(e.getMessage());  
  }
  }
  public static void main(String[] args){
  switch(args.length){
  case 0: System.out.println("File has not mentioned.");
    System.exit(0);
  case 1: System.out.println("Destination file has not mentioned.");
  System.exit(0);
  case 2: copyfile(args[0],args[1]);
  System.exit(0);
  default : System.out.println("Multiple files are not allow.");
  System.exit(0);
  }
  }
4

1 に答える 1

3

Java 7 を使用している場合は、これを行うための非常に簡単な方法がありますFiles.copy

于 2012-05-19T21:37:20.263 に答える