Bonjour à tous,
juste pour avoir des conseils, quels sont les meilleus API pour générer et ecrire dans des fichiers sur un systeme UNIX depuis un code JAVA ...
Merci
Bonjour à tous,
juste pour avoir des conseils, quels sont les meilleus API pour générer et ecrire dans des fichiers sur un systeme UNIX depuis un code JAVA ...
Merci
Tout ce qui tourne autour de java.io.File etc...
Enfin, c'est ce que j'utilise
Mais quel rapport avec unix ?
dans certains liens j'ai trouvé ça :
La création de fichier en JAVA est assez vaste, il existe les flux entrée/sorties binaires (comme dans cet exemple) mais aussi les flux entrée/sortie de texte mais aussi les flux d'objets (Sérialisation). Je pense qu'il est très utile dans ces cas là de se procurer un livre sur le langage qui répertorie les diverses fonctions et pourra vous guider de manière plus exhaustive.
Enfin dans mon cas je suis un peu perdu car je veux créer des fichiers et ecrire dedans avec un flux assez volumienux...DOnc c'est quoi la meilleur façon en terme de perf...?
Merci
Tu peux utiliser les BufferedReader/BufferedWriter.
Je viens de tester l'exemple suivant :
et dans mon appel je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 public static void writeToFile(String filename) { BufferedWriter bufferedWriter = null; try { //Construct the BufferedWriter object bufferedWriter = new BufferedWriter(new FileWriter(filename)); //TODO Feten 16/06 ==> values for Tests ==> delete later & write info of contracts of retblissement //check how //Start writing to the output stream bufferedWriter.write("Writing line one to file"); bufferedWriter.newLine(); bufferedWriter.write("Writing line two to file"); } catch (FileNotFoundException ex) { ex.printStackTrace(); } catch (IOException ex) { ex.printStackTrace(); } finally { //Close the BufferedWriter try { if (bufferedWriter != null) { bufferedWriter.flush(); bufferedWriter.close(); } } catch (IOException ex) { ex.printStackTrace(); } } }
j'ai l'exception suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part FilesHandler.writeToFile("$WORK/DunningWork/TO_DO.txt");
le souci vient il du fait d'utiliser le nom d'une variable ou ...???
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 INFO [main] (Retablissement_Dunning_Ph3.java:81) - BEFORE ===> Test Write to file : $WORK/DunningWork/TO_DO.txt java.io.FileNotFoundException: $WORK/FetenDunningWork/TO_DO.txt (No such file or directory) at java.io.FileOutputStream.open(Native Method) at java.io.FileOutputStream.<init>(FileOutputStream.java:179) at java.io.FileOutputStream.<init>(FileOutputStream.java:70) at java.io.FileWriter.<init>(FileWriter.java:46)
effectivement le souci est du au fait de passer
par le nom de variable dans le nom du fichier...
que faut il faire ??
Merci
Que représente $WORK une variable d'environnement je suppose ?
Tu peux la récupérer par System.getEnv(nom) ou pas ?
Bonjour,
La variable $WORK est-elle définie ?
Je pense qu'il s'agit d'une variable définie sur Unix.
Il faudrait la redéfinir dans Java (mettre le chemin absolu ou relatif par rapport à votre programme dans une chaine de caractères)
Exemple :
Si $WORK = /usr/temp
Alors il faudrait appeler ainsi votre FilesHandler :
Code : Sélectionner tout - Visualiser dans une fenêtre à part FilesHandler.writeToFile("/usr/temp/DunningWork/TO_DO.txt");
Partager