1. FileWritter écrit dans le fichier
FileWritter, le flux de caractères écrit des caractères dans le fichier. Par défaut, il remplace tout le contenu existant par un nouveau contenu, cependant, lors de la spécification d'une valeur vraie (booléenne) comme deuxième paramètre du constructeur FileWritter, il conserve le contenu existant et ajoute le nouveau contenu à la fin du fichier.
1. Remplacez tous les contenus existants par un nouveau contenu.
Nouveau FileWriter (fichier); 2. Gardez le contenu existant et le nouveau contenu attaché à la fin du fichier.
La copie de code est la suivante:
nouveau filewriter (fichier, true);
Exemple de fichier annexé
Un fichier texte nommé "javaio-appendfile.txt" et contient le contenu suivant.
ABC Hello ajoute un nouveau contenu nouveau FileWriter (fichier, true)
La copie de code est la suivante:
Package com.yiibai.file;
Importer java.io.file;
import java.io.filewriter;
Importer java.io.BufferedWriter;
Importer java.io.ioException;
Classe publique appendtofileExample
{
public static void main (String [] args)
{
essayer{
String data = "Ce contenu ajoutera à la fin du fichier";
File file = new File ("javaio-apprendfile.txt");
// Si le fichier n'existe pas, créez-le
if (! file.exists ()) {
file.CreateEwFile ();
}
// true = fichier d'ajout
FileWriter FileWritter = new FileWriter (file.getName (), true);
BufferedWriter Bufferwritter = new BufferedWriter (FileWritter);
bufferwtter.write (data);
bufferwtter.close ();
System.out.println ("fait");
} catch (ioexception e) {
e.printStackTrace ();
}
}
}
résultat
Maintenant, le contenu du fichier texte "javaio-appendfile.txt" est mis à jour comme suit:
ABC Bonjour ce contenu va ajouter à la fin du fichier
2. BufferedWriter écrit dans le fichier
BufferedWriter est une classe de flux de caractères qui traite les données des caractères. Contrairement aux flux d'octets (les données sont converties en octets), vous pouvez écrire des chaînes, des tableaux ou des données de caractère directement en fichier.
La copie de code est la suivante:
Package com.yiibai.iofile;
Importer java.io.BufferedWriter;
Importer java.io.file;
import java.io.filewriter;
Importer java.io.ioException;
classe publique WriteTofileExample {
public static void main (String [] args) {
essayer {
String Content = "Ceci est le contenu à écrire dans le fichier";
File file = new File ("/ users / mkyong / filename.txt");
// Si le fichier n'existe pas, créez-le
if (! file.exists ()) {
file.CreateEwFile ();
}
Filewriter fw = new FileWriter (file.getAbsoluteFile ());
BufferedWriter bw = new BufferedWriter (FW);
bw.write (contenu);
bw.close ();
System.out.println ("fait");
} catch (ioexception e) {
e.printStackTrace ();
}
}
}
3. FileOutputStream écrit dans le fichier
Un flux de sortie de fichier est une classe de flux d'octets utilisé pour traiter les données binaires brutes. Afin d'écrire des données dans un fichier, les données doivent être converties en octets et enregistrées dans le fichier. Voir l'exemple complet ci-dessous.
La copie de code est la suivante:
Package com.yiibai.io;
Importer java.io.file;
Importer java.io.fileOutputStream;
Importer java.io.ioException;
classe publique writeFileExample {
public static void main (String [] args) {
FileoutputStream fop = null;
Fichier de fichier;
String Content = "Ceci est le contenu texte";
essayer {
file = new File ("c: /newfile.txt");
fop = new FileOutputStream (fichier);
// Si le fichier n'existe pas, créez-le
if (! file.exists ()) {
file.CreateEwFile ();
}
// Obtenez le contenu en octets
Byte [] ContentInBytes = content.getBytes ();
fop.write (contentInBytes);
fop.flush ();
fop.close ();
System.out.println ("fait");
} catch (ioexception e) {
e.printStackTrace ();
} enfin {
essayer {
if (fop! = null) {
fop.close ();
}
} catch (ioexception e) {
e.printStackTrace ();
}
}
}
}
// JDK7 mis à jour, par exemple, utilise la nouvelle méthode "Try Resource Shutdown" pour traiter facilement les fichiers.
Package com.yiibai.io;
Importer java.io.file;
Importer java.io.fileOutputStream;
Importer java.io.ioException;
classe publique writeFileExample {
public static void main (String [] args) {
File file = new File ("c: /newfile.txt");
String Content = "Ceci est le contenu texte";
try (fileoutputStream fop = new fileoutputStream (file)) {
// Si le fichier n'existe pas, créez-le
if (! file.exists ()) {
file.CreateEwFile ();
}
// Obtenez le contenu en octets
Byte [] ContentInBytes = content.getBytes ();
fop.write (contentInBytes);
fop.flush ();
fop.close ();
System.out.println ("fait");
} catch (ioexception e) {
e.printStackTrace ();
}
}
}