Copiez le code comme suit :
paquet com.pzq.io ;
importer java.io.BufferedReader ;
importer java.io.BufferedWriter ;
importer java.io.File ;
importer java.io.FileWriter ;
importer java.io.IOException ;
importer java.io.StringReader ;
importer java.nio.charset.Charset ;
importer java.util.ArrayList ;
importer java.util.List ;
importer org.apache.commons.io.FileUtils ;
/**
* Outils d'exploitation de fichiers
* @version 1.0 2013/07/16
*
*/
classe publique FileUtil {
/**
* Copiez des fichiers ou des répertoires, et les fichiers avant et après la copie seront exactement les mêmes.
* @param resFilePath chemin du fichier source
* Dossier cible @param distFolder
* @IOException levée lorsqu'une exception se produit pendant l'opération
*/
public static void copyFile (String resFilePath, String distFolder)
lance IOException {
Fichier resFile = nouveau fichier (resFilePath);
Fichier distFile = nouveau fichier (distFolder);
if (resFile.isDirectory()) { // Répertoire
FileUtils.copyDirectoryToDirectory(resFile, distFile);
} sinon if (resFile.isFile()) { // fichier
// FileUtils.copyFileToDirectory(resFile, distFile, true);
FileUtils.copyFileToDirectory(resFile, distFile);
}
}
/**
* Supprimer un fichier ou un répertoire
* @param targetPath chemin du fichier ou du répertoire
* @IOException levée lorsqu'une exception se produit pendant l'opération
*/
public static void deleteFile (String targetPath) lance IOException {
Fichier targetFile = nouveau fichier (targetPath);
si (targetFile.isDirectory()) {
FileUtils.deleteDirectory(targetFile);
} sinon if (targetFile.isFile()) {
targetFile.delete();
}
}
/**
* Écrivez la chaîne dans le fichier spécifié (lorsque le dossier dans le chemin parent spécifié n'existe pas, il sera créé autant que possible pour garantir une sauvegarde réussie !)
*
* @param res chaîne d'origine
* @param filePath chemin du fichier
* Marque de réussite @return
* @throwsIOException
*/
public static boolean string2File (String res, String filePath) lance IOException {
indicateur booléen = vrai ;
BufferedReader bufferedReader = null ;
BufferedWriter bufferedWriter = null;
essayer {
Fichier distFile = nouveau fichier (filePath);
if (!distFile.getParentFile().exists()) {//Créer quand il n'existe pas
distFile.getParentFile().mkdirs();
}
bufferedReader = nouveau BufferedReader(nouveau StringReader(res));
bufferedWriter = nouveau BufferedWriter(nouveau FileWriter(distFile));
char buf[] = new char[1024]; //Tampon de caractères
int lentille ;
while ((len = bufferedReader.read(buf)) != -1) {
bufferedWriter.write(buf, 0, len);
}
bufferedWriter.flush();
bufferedReader.close();
bufferedWriter.close();
} catch (IOException e) {
drapeau = faux ;
lancez e;
}
drapeau de retour ;
}
/**
* Obtenez le contenu du fichier spécifié
*
* @param res chaîne d'origine
* @param filePath chemin du fichier
* Marque de réussite @return
* @throwsIOException
*/
public static List<String> getContentFromFile(String filePath) lance IOException {
List<String> listes = null ;
essayer {
if(!(new File(filePath).exists())){
renvoie un nouveau ArrayList<String>();
}
lists = FileUtils.readLines(new File(filePath), Charset.defaultCharset());
} catch (IOException e) {
lancez e;
}
listes de retour ;
}
/**
* Ajouter du contenu au fichier spécifié
* @param chemin de fichier
* Contenu @param
*/
public static void addContent (String filePath, List<String> contents) lance IOException {
essayer {
FileUtils.writeLines (nouveau fichier (filePath), contenu);
} catch (IOException e) {
lancez e;
}
}
}