Copy kode kodenya sebagai berikut:
paket com.pzq.io;
impor java.io.BufferedReader;
impor java.io.BufferedWriter;
impor java.io.File;
impor java.io.FileWriter;
impor java.io.IOException;
impor java.io.StringReader;
impor java.nio.charset.Charset;
impor java.util.ArrayList;
impor java.util.List;
import org.apache.commons.io.FileUtils;
/**
* Alat operasi file
* @versi 1.0 2013/07/16
*
*/
FileUtil kelas publik {
/**
* Salin file atau direktori, dan file sebelum dan sesudah disalin akan sama persis.
* @param resFilePath jalur file sumber
* @param distFolder folder target
* @IOException dilemparkan ketika pengecualian terjadi selama operasi
*/
copyFile kekosongan statis publik (String resFilePath, String distFolder)
melempar IOException {
File resFile = File baru(resFilePath);
File distFile = File baru(distFolder);
if (resFile.isDirectory()) {// Direktori
FileUtils.copyDirectoryToDirectory(resFile, distFile);
} else if (resFile.isFile()) {// file
// FileUtils.copyFileToDirectory(resFile, distFile, benar);
FileUtils.copyFileToDirectory(resFile, distFile);
}
}
/**
* Hapus file atau direktori
* @param targetPath file atau jalur direktori
* @IOException dilemparkan ketika pengecualian terjadi selama operasi
*/
public static void deleteFile(String targetPath) melempar IOException {
File targetFile = File baru(targetPath);
if (targetFile.isDirectory()) {
FileUtils.deleteDirectory(targetFile);
} lain jika (targetFile.isFile()) {
targetFile.hapus();
}
}
/**
* Tulis string ke dalam file yang ditentukan (bila folder di jalur induk yang ditentukan tidak ada, maka akan dibuat sebanyak mungkin untuk memastikan keberhasilan penyimpanan!)
*
* @param res string asli
* @param filePath jalur file
* @mengembalikan tanda sukses
* @throwsIOException
*/
boolean statis publik string2File(String res, String filePath) melempar IOException {
bendera boolean = benar;
BufferedReader bufferedReader = null;
BufferedWriter bufferedWriter = null;
mencoba {
File distFile = File baru(filePath);
if (!distFile.getParentFile().exists()) {//Buat jika tidak ada
distFile.getParentFile().mkdirs();
}
bufferedReader = BufferedReader baru(StringReader(res) baru);
bufferedWriter = BufferedWriter baru(FileWriter baru(distFile));
char buf[] = char baru[1024]; //Penyangga karakter
ke dalam len;
while ((len = bufferedReader.read(buf)) != -1) {
bufferedWriter.write(buf, 0, len);
}
bufferedWriter.flush();
bufferedReader.close();
bufferedWriter.close();
} tangkapan (IOException e) {
bendera = salah;
melempar e;
}
bendera kembali;
}
/**
* Dapatkan konten file yang ditentukan
*
* @param res string asli
* @param filePath jalur file
* @mengembalikan tanda sukses
* @throwsIOException
*/
Daftar statis publik<String> getContentFromFile(String filePath) melempar IOException {
Daftar<String> daftar = null;
mencoba {
if(!(File baru(filePath).ada())){
kembalikan ArrayList<String>();
}
daftar = FileUtils.readLines(File baru(filePath), Charset.defaultCharset());
} tangkapan (IOException e) {
melempar e;
}
daftar pengembalian;
}
/**
* Tambahkan konten ke file yang ditentukan
* @param filePath
* @param isinya
*/
public static void addContent(String filePath, Daftar<String> isi) melempar IOException {
mencoba {
FileUtils.writeLines(File baru(filePath), isi);
} tangkapan (IOException e) {
melempar e;
}
}
}