Heim > Java > javaLernprogramm > Hauptteil

Teilen Sie verschiedene Methoden zum Schreiben von Dateien in Java

高洛峰
Freigeben: 2017-01-24 14:09:42
Original
1331 Leute haben es durchsucht

1, FileWritter schreibt Dateien in Dateien

FileWritter, Zeichenstrom schreibt Zeichen in Dateien. Standardmäßig wird der gesamte vorhandene Inhalt durch neuen Inhalt ersetzt. Wenn jedoch ein wahrer (boolescher) Wert als zweiter Parameter des FileWritter-Konstruktors angegeben wird, bleibt der vorhandene Inhalt erhalten und der neue Inhalt wird am Ende der Datei angehängt.

1. Ersetzen Sie alle vorhandenen Inhalte durch neue Inhalte.

new FileWriter(file);2. Behalten Sie den vorhandenen Inhalt bei und hängen Sie den neuen Inhalt an das Ende der Datei an.

new FileWriter(file,true);
Nach dem Login kopieren

Beispiel für eine Anhängedatei
Eine Textdatei mit dem Namen „javaio-appendfile.txt“ und dem folgenden Inhalt.

ABC Hello fügt neuen Inhalt new FileWriter(file,true) an

package com.yiibai.file;

import java.io.File;
import java.io.FileWriter;
import java.io.BufferedWriter;
import java.io.IOException;

public class AppendToFileExample 
{
    public static void main( String[] args )
    { 
     try{
      String data = " This content will append to the end of the file";

      File file =new File("javaio-appendfile.txt");

      //if file doesnt exists, then create it
      if(!file.exists()){
       file.createNewFile();
      }

      //true = append file
      FileWriter fileWritter = new FileWriter(file.getName(),true);
             BufferedWriter bufferWritter = new BufferedWriter(fileWritter);
             bufferWritter.write(data);
             bufferWritter.close();

         System.out.println("Done");

     }catch(IOException e){
      e.printStackTrace();
     }
    }
}
Nach dem Login kopieren

Ergebnis
Jetzt wird der Inhalt der Textdatei „javaio-appendfile.txt“ wie folgt aktualisiert :

ABC Hallo. Dieser Inhalt wird an das Ende der Datei angehängt.


Zweitens schreibt BufferedWriter die Datei.

Gepufferte Zeichen (BufferedWriter) ist eine Zeichenstromklasse um Zeichendaten zu verarbeiten. Im Gegensatz zu Byte-Streams (in Bytes umgewandelte Daten) können Sie String-, Array- oder Zeichendaten direkt in eine Datei schreiben.

package com.yiibai.iofile;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

public class WriteToFileExample {
 public static void main(String[] args) {
  try {

   String content = "This is the content to write into file";

   File file = new File("/users/mkyong/filename.txt");

   // if file doesnt exists, then create it
   if (!file.exists()) {
    file.createNewFile();
   }

   FileWriter fw = new FileWriter(file.getAbsoluteFile());
   BufferedWriter bw = new BufferedWriter(fw);
   bw.write(content);
   bw.close();

   System.out.println("Done");

  } catch (IOException e) {
   e.printStackTrace();
  }
 }
}
Nach dem Login kopieren

Drei, FileOutputStream schreibt Dateien


Der Dateiausgabestream ist eine Byte-Stream-Klasse, die zur Verarbeitung roher Binärdaten verwendet wird. Um Daten in eine Datei zu schreiben, müssen die Daten in Bytes umgewandelt und in der Datei gespeichert werden. Das vollständige Beispiel finden Sie unten.

package com.yiibai.io;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

public class WriteFileExample {
 public static void main(String[] args) {

  FileOutputStream fop = null;
  File file;
  String content = "This is the text content";

  try {

   file = new File("c:/newfile.txt");
   fop = new FileOutputStream(file);

   // if file doesnt exists, then create it
   if (!file.exists()) {
    file.createNewFile();
   }

   // get the content in bytes
   byte[] contentInBytes = content.getBytes();

   fop.write(contentInBytes);
   fop.flush();
   fop.close();

   System.out.println("Done");

  } catch (IOException e) {
   e.printStackTrace();
  } finally {
   try {
    if (fop != null) {
     fop.close();
    }
   } catch (IOException e) {
    e.printStackTrace();
   }
  }
 }
}
//更新的JDK7例如,使用新的“尝试资源关闭”的方法来轻松处理文件。
package com.yiibai.io;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

public class WriteFileExample {
 public static void main(String[] args) {

  File file = new File("c:/newfile.txt");
  String content = "This is the text content";

  try (FileOutputStream fop = new FileOutputStream(file)) {

   // if file doesn't exists, then create it
   if (!file.exists()) {
    file.createNewFile();
   }

   // get the content in bytes
   byte[] contentInBytes = content.getBytes();

   fop.write(contentInBytes);
   fop.flush();
   fop.close();

   System.out.println("Done");

  } catch (IOException e) {
   e.printStackTrace();
  }
 }
}
Nach dem Login kopieren

Weitere Java-Methoden zum Schreiben von Dateien und zum Teilen verwandter Artikel finden Sie auf der chinesischen PHP-Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!