Java:Les fichiers
De WIKI.minetti.org
Révision de 7 avril 2016 à 17:01 par Jp (discussion | contributions) (Page créée avec « == Accès == === Répertoire ressources === Dans un projet Java, un ou plusieurs répertoires ressources peuvent être mentionnés dans le CLASSPATH. Le code suivant perme... »)
Sommaire
Accès
Répertoire ressources
Dans un projet Java, un ou plusieurs répertoires ressources peuvent être mentionnés dans le CLASSPATH. Le code suivant permet d'accéder aux fichiers de ces répertoires:
InputStream stream = getClass ().getResourceAsStream ("/conf.properties");
Pour obtenir le chemin réel du fichier (à partir de la racine du système):
URL url = getClass ().getResource ("/conf.properties"); String filepath = url.toString ();
Répertoire du paquetage
L'accès à un fichier peut se faire au niveau du répertoire (ou des répertoires) du paquetage de la classe qui accède au fichier:
InputStream stream = getClass ().getResourceAsStream ("conf.properties");
Répertoire racine d'une application web (webapp)
L'accès à un fichier d'une application web situé en dehors du chemin /WEB-INF/classes et d'un des JAR de /WEB-INF/lib, se fait à l'aide du code suivant:
URL url = servletContext.getResource ("/img/logo.png");
Au niveau d'Eclipse, cela correspond au fichier src/main/webapp/img/logo.png.
Concaténation de fichiers
Pour faire une concaténation de 2 fichiers au niveau binaire:
private void appendFile (final File srcFile, final File destFile) throws Exception { final FileWriter fileWriter = new FileWriter(destFile, true); try { final BufferedWriter bufWriter = new BufferedWriter(fileWriter); try { final FileReader fileReader = new FileReader(srcFile); try { final BufferedReader bufReader = new BufferedReader(fileReader); try { while (bufReader.ready()) { bufWriter.write(bufReader.read()); } } finally { bufReader.close(); } } finally { fileReader.close(); } } finally { bufWriter.close(); } } finally { fileWriter.close(); } }
Pour faire une concaténation de 2 fichiers au niveau texte:
private void appendFile (final File srcFile, final File destFile) throws Exception { final FileWriter fileWriter = new FileWriter(destFile, true); try { final BufferedWriter bufWriter = new BufferedWriter(fileWriter); try { final FileReader fileReader = new FileReader(srcFile); try { final BufferedReader bufReader = new BufferedReader(fileReader); try { while (bufReader.ready()) { bufWriter.write(bufReader.readLine()); bufWriter.newLine(); } } finally { bufReader.close(); } } finally { fileReader.close(); } } finally { bufWriter.close(); } } finally { fileWriter.close(); } }