[Java] Créer un fichier
Résolu/Fermé
reltak
Messages postés
261
Date d'inscription
mercredi 22 août 2007
Statut
Membre
Dernière intervention
14 janvier 2012
-
26 août 2007 à 22:17
Larandar - 17 juin 2012 à 21:17
Larandar - 17 juin 2012 à 21:17
A voir également:
- [Java] Créer un fichier
- Waptrick java football - Télécharger - Jeux vidéo
- Créer un compte google - Guide
- Comment créer un groupe whatsapp - Guide
- Creer un fichier .bat - Guide
- Fichier rar - Guide
11 réponses
Ambobo
Messages postés
28
Date d'inscription
dimanche 26 août 2007
Statut
Membre
Dernière intervention
8 mars 2009
49
27 août 2007 à 00:19
27 août 2007 à 00:19
Bonjour,
Avant de créer un FileOutStream, as-tu crée un File qui est l'objet réprésentant ton fichier sur le disque dur (fichier ou répertoire),
try
{
java.io.File fichier = new java.io.File("monfichier.dat");
monFichier.createNewFile(); // Cette fonction doit être appelée au sein d'un bloc TRY
}
catch (IOException)
{
System.out.println("Impossible de créer le fichier");
}
Ensuite tu peux construire ton object FileOutputStream avec ton File
try
{
java.io.FileOutputStream monFluxFichier = new java.io.FileOutputStream(monFichier); // Doit être utilisé dans un bloc TRY
}
catch (FileNotFoundException)
{
System.out.println("Impossible de trouver le fichier");
}
Voilà, après tu peux ecrire ton tableau d'octet grace au flux et n'oublie pas de le fermer
....
monFluxFichier.close(); // Toujours dans un TRY
catch (IOException)
{
}
En espérant que cela ai pu t'aider, Ambobo.
Avant de créer un FileOutStream, as-tu crée un File qui est l'objet réprésentant ton fichier sur le disque dur (fichier ou répertoire),
try
{
java.io.File fichier = new java.io.File("monfichier.dat");
monFichier.createNewFile(); // Cette fonction doit être appelée au sein d'un bloc TRY
}
catch (IOException)
{
System.out.println("Impossible de créer le fichier");
}
Ensuite tu peux construire ton object FileOutputStream avec ton File
try
{
java.io.FileOutputStream monFluxFichier = new java.io.FileOutputStream(monFichier); // Doit être utilisé dans un bloc TRY
}
catch (FileNotFoundException)
{
System.out.println("Impossible de trouver le fichier");
}
Voilà, après tu peux ecrire ton tableau d'octet grace au flux et n'oublie pas de le fermer
....
monFluxFichier.close(); // Toujours dans un TRY
catch (IOException)
{
}
En espérant que cela ai pu t'aider, Ambobo.
Ambobo
Messages postés
28
Date d'inscription
dimanche 26 août 2007
Statut
Membre
Dernière intervention
8 mars 2009
49
27 août 2007 à 13:48
27 août 2007 à 13:48
Peux-tu nous poster la portion de code source qui pose problème.
Si le message d'erreur te dit qu'il y a une exception IO, c'est que tu n'as peut être pas consigné le code dans un bloc TRY / CATCH cela rendra le débugage plus simple. Autrement si tu ne vois vraiment pas, untilise les BreakPoint pour analyser le code instruction après instructions en mode Debug.
Sinon, il se peut que lorsque tu crées le fichier, les permissions ne te permettent pas de le modifier. Vérifie lorsque le fichier est crée si il est en lecture seule, etc...
Mais si je vois ton code source, ce sera sans doute plus clair à trouver.
Ambobo
Si le message d'erreur te dit qu'il y a une exception IO, c'est que tu n'as peut être pas consigné le code dans un bloc TRY / CATCH cela rendra le débugage plus simple. Autrement si tu ne vois vraiment pas, untilise les BreakPoint pour analyser le code instruction après instructions en mode Debug.
Sinon, il se peut que lorsque tu crées le fichier, les permissions ne te permettent pas de le modifier. Vérifie lorsque le fichier est crée si il est en lecture seule, etc...
Mais si je vois ton code source, ce sera sans doute plus clair à trouver.
Ambobo
Ambobo
Messages postés
28
Date d'inscription
dimanche 26 août 2007
Statut
Membre
Dernière intervention
8 mars 2009
49
30 juin 2008 à 15:55
30 juin 2008 à 15:55
Voici un exemple simple de création de fichier binaire en JAVA :
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.
Bonne journée
Ambobo
import java.io.*; public class CreerFichier { private int nombreChoisi = 45; // exemple private String nomFichier = "fichier_binaire.dat"; private DataOutputStream fluxSortieBinaire; public void creerFichierBinaire() throws IOException { // ouverture du flux this.fluxSortieBinaire = new DataOutputStream( new FileOutputStream( this.nomFichier ) ); this.fluxSortieBinaire.writeInt( this.nombreChoisi ); // Marche avec writeBoolean, writeChar, writeChars(String), tous les types primitifs. this.fluxSortieBinaire.close(); // fermeture du flux } }
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.
Bonne journée
Ambobo
reltak
Messages postés
261
Date d'inscription
mercredi 22 août 2007
Statut
Membre
Dernière intervention
14 janvier 2012
41
27 août 2007 à 14:35
27 août 2007 à 14:35
ici je veux créer un log texte et cela pose le même problème qu'avec mon tableau d'octets...
pourtant quand je l'exécute DANS netbeans ca marche, mais à partir de la console ca marche plus :/
public LogWriter() {
Calendar Today = Calendar.getInstance();
String NOM_DU_FICHIER = String.valueOf(Today.get(Calendar.DAY_OF_MONTH)) + String.valueOf(Today.get(Calendar.MONTH)) + String.valueOf(Today.get(Calendar.YEAR)) + String.valueOf(Today.get(Calendar.HOUR_OF_DAY)) + String.valueOf(Today.get(Calendar.MINUTE)) + String.valueOf(Today.get(Calendar.SECOND)) + ".log";
File FICHIER = null;
try {
FICHIER = new File("./log/" + NOM_DU_FICHIER);
FICHIER.createNewFile();
} catch (IOException ex) {
ex.printStackTrace();
}
try {
_DOS_LOG_FILE = new FileOutputStream(FICHIER);
_DOS_LOG_FILE.write("Serveur CIM 2.0\n".getBytes());
} catch (IOException fnfe) {
System.out.println("Fichier introuvable");
}
}
pourtant quand je l'exécute DANS netbeans ca marche, mais à partir de la console ca marche plus :/
public LogWriter() {
Calendar Today = Calendar.getInstance();
String NOM_DU_FICHIER = String.valueOf(Today.get(Calendar.DAY_OF_MONTH)) + String.valueOf(Today.get(Calendar.MONTH)) + String.valueOf(Today.get(Calendar.YEAR)) + String.valueOf(Today.get(Calendar.HOUR_OF_DAY)) + String.valueOf(Today.get(Calendar.MINUTE)) + String.valueOf(Today.get(Calendar.SECOND)) + ".log";
File FICHIER = null;
try {
FICHIER = new File("./log/" + NOM_DU_FICHIER);
FICHIER.createNewFile();
} catch (IOException ex) {
ex.printStackTrace();
}
try {
_DOS_LOG_FILE = new FileOutputStream(FICHIER);
_DOS_LOG_FILE.write("Serveur CIM 2.0\n".getBytes());
} catch (IOException fnfe) {
System.out.println("Fichier introuvable");
}
}
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
j'ai cree un arbre en java qui contient 4 élément,je veut quand je click sur l'un des élément j'affiche sa table depuis la base de donnée,je veux savoir comment tester sur la sélection, l'arbre contient voiture,chauffeur,modèle ,station.
reltak
Messages postés
261
Date d'inscription
mercredi 22 août 2007
Statut
Membre
Dernière intervention
14 janvier 2012
41
27 août 2007 à 18:48
27 août 2007 à 18:48
T'avais raison concernant les droits, ça marche maintenant avec
FICHIER.setWritable(true);
^^ merci beaucoup
FICHIER.setWritable(true);
^^ merci beaucoup
Ambobo
Messages postés
28
Date d'inscription
dimanche 26 août 2007
Statut
Membre
Dernière intervention
8 mars 2009
49
28 août 2007 à 17:26
28 août 2007 à 17:26
Heureux d'avoir pu t'aider !
Bonne Continuation, Ambobo.
Bonne Continuation, Ambobo.
azizdie
Messages postés
11
Date d'inscription
lundi 27 novembre 2006
Statut
Membre
Dernière intervention
3 juillet 2008
30 juin 2008 à 01:57
30 juin 2008 à 01:57
bonjour,
peux m'indiquer un exemple complet de création de fichier avec java
merci
peux m'indiquer un exemple complet de création de fichier avec java
merci
mima5555
>
azizdie
Messages postés
11
Date d'inscription
lundi 27 novembre 2006
Statut
Membre
Dernière intervention
3 juillet 2008
18 mars 2009 à 14:25
18 mars 2009 à 14:25
slt, tous le monde j'ai besoin syntaxe sur la creation d'un fichier txt en java ,
En attente de votre réponse
En attente de votre réponse
reltak
Messages postés
261
Date d'inscription
mercredi 22 août 2007
Statut
Membre
Dernière intervention
14 janvier 2012
41
27 août 2007 à 11:18
27 août 2007 à 11:18
Et en fait quand je l'exécute depuis NetBeans il crée le fichier mais écrit rien dedans... :( là je comprends plus !
reltak
Messages postés
261
Date d'inscription
mercredi 22 août 2007
Statut
Membre
Dernière intervention
14 janvier 2012
41
27 août 2007 à 11:03
27 août 2007 à 11:03
Voilà le message qu'il m'indique...
java.io.IOException: No such file or directory
at java.io.UnixFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(File.java:883)
at cimserver.LogWriter.<init>(LogWriter.java:28)
at cimserver.CIMServer.<init>(CIMServer.java:53)
at cimserver.CIMServer.main(CIMServer.java:31)
ca doit venir de mon projet paske g essayé de faire un autre prog java qui fait qu'écrire un fichier et ça marche...
Je ne sais vraiment pas d'où vient cette erreur... :(
java.io.IOException: No such file or directory
at java.io.UnixFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(File.java:883)
at cimserver.LogWriter.<init>(LogWriter.java:28)
at cimserver.CIMServer.<init>(CIMServer.java:53)
at cimserver.CIMServer.main(CIMServer.java:31)
ca doit venir de mon projet paske g essayé de faire un autre prog java qui fait qu'écrire un fichier et ça marche...
Je ne sais vraiment pas d'où vient cette erreur... :(