次のようにコードをコピーします。
パッケージcom.pzq.io;
java.io.BufferedReaderをインポートします。
インポート java.io.BufferedWriter;
java.io.ファイルをインポートします。
java.io.FileWriterをインポートします。
インポート java.io.IOException;
java.io.StringReaderをインポートします。
インポート java.nio.charset.Charset;
java.util.ArrayListをインポートします。
java.util.Listをインポートします。
org.apache.commons.io.FileUtils をインポートします。
/**
・ファイル操作ツール
* @バージョン1.0 2013/07/16
*
*/
パブリック クラス FileUtil {
/**
※ファイルやディレクトリをコピーすると、コピー前とコピー後のファイルは全く同じになります。
* @param resFilePath ソース ファイル パス
* @param distFolder 対象フォルダー
* 操作中に例外が発生した場合にスローされる @IOException
*/
public static void copyFile(String resFilePath, String distFolder)
IOException をスローします {
ファイル resFile = 新しいファイル(resFilePath);
ファイル distFile = 新しいファイル (distFolder);
if (resFile.isDirectory()) { // ディレクトリ
FileUtils.copyDirectoryToDirectory(resFile, distFile);
} else if (resFile.isFile()) { // ファイル
// FileUtils.copyFileToDirectory(resFile, distFile, true);
FileUtils.copyFileToDirectory(resFile, distFile);
}
}
/**
* ファイルまたはディレクトリを削除する
* @param targetPath ファイルまたはディレクトリのパス
* 操作中に例外が発生した場合にスローされる @IOException
*/
public static void deleteFile(String targetPath) throws IOException {
ファイル targetFile = 新しいファイル(targetPath);
if (targetFile.isDirectory()) {
FileUtils.deleteDirectory(targetFile);
else if (targetFile.isFile()) {
targetFile.delete();
}
}
/**
※指定したファイルに文字列を書き込みます(指定した親パスにフォルダが存在しない場合は可能な限り作成して保存を成功させます!)
*
* @param res 元の文字列
* @param filePath ファイルパス
* @return 成功マーク
* @throwsIOException
*/
public static boolean string2File(String res, String filePath) throws IOException {
ブール値フラグ = true;
BufferedReaderbufferedReader = null;
BufferedWriterbufferedWriter = null;
試す {
ファイル distFile = 新しいファイル (ファイルパス);
if (!distFile.getParentFile().exists()) {//存在しない場合に作成
distFile.getParentFile().mkdirs();
}
bufferedReader = new BufferedReader(new StringReader(res));
bufferedWriter = new BufferedWriter(new FileWriter(distFile));
char buf[] = new char[1024]; //文字バッファ
int len;
while ((len =bufferedReader.read(buf)) != -1) {
bufferedWriter.write(buf, 0, len);
}
バッファードライター.flush();
bufferedReader.close();
bufferedWriter.close();
} キャッチ (IOException e) {
フラグ = false;
eを投げます。
}
リターンフラグ;
}
/**
* 指定したファイルの内容を取得します
*
* @param res 元の文字列
* @param filePath ファイルパス
* @return 成功マーク
* @throwsIOException
*/
public static List<String> getContentFromFile(String filePath) throws IOException {
List<String> リスト = null;
試す {
if(!(新しいファイル(ファイルパス).exists())){
新しい ArrayList<String>() を返します。
}
lists = FileUtils.readLines(new File(filePath), Charset.defaultCharset());
} キャッチ (IOException e) {
eを投げます。
}
リストを返す。
}
/**
* 指定されたファイルにコンテンツを追加します
* @param ファイルパス
* @paramの内容
*/
public static void addContent(String filePath, List<String> content) throws IOException {
試す {
FileUtils.writeLines(新しいファイル(ファイルパス), 内容);
} キャッチ (IOException e) {
eを投げます。
}
}
}