Java Realisierung großer Dateien gemäß der Zeile
String -Datei = "F:" + Datei.Sesparators + "A.TXT"; (((((s = raf.readline ())! = null) {System.out.println (s);} raf.close ();
Die beiden im Internet beliebten Version sind nicht zuverlässig
In Anbetracht des BufferedInputStream und BufferedOutputStream ist dieser Code zu einfach und für nicht frequentierte Operationen geeignet. Oder verwenden
Datei infile = neue Datei ("d: // error"); FileOutStream (Outfile) .GetChannel (); } OutFilechannel.CLOSE ();
Zufällige Lesendateiinhalt
Public Class ReadfromFile { /*** Lesen Sie Dateien in Bytes, die häufig zum Lesen von Binärdateien wie Bildern, Sounds, Bildern und anderen Dateien verwendet werden. */ Public static void ReadFileBytes (String -Dateiname) {Datei Datei = neue Datei (Dateiname); (Datei); printStacktrace (); BYTEREAD = 0; {System.out.Write (tempBytes, 0, byteread);}} {Ausnahme e1) {e1.printstacktrace ();} schließlich {if (in! = Null) {try {in.close ();} catch (ioException E1) {}}} / *** Lesen Sie Dateien als Einheit, die häufig in Zeichen verwendet wird, die häufig in Zeichen verwendet werden. Datei = neue Datei (Dateiname); Datei)); // Aber wenn diese beiden Zeichen separat angezeigt werden, ändern sie sich zweimal. // Daher Schild/R oder Schild/n. Andernfalls gibt es viele leere Linien. if ((((((((((((((cha)))! {e.printstacktrace ();} try {System.out.println ("Lesen Sie den Dateiinhalt im Gerät als Einheit und lesen Sie jeweils mehrere Bytes: // Lesen Sie mehrere Zeichen char [] tempchars = new char [30] ; int charread = 0 0; ! = -1) {// Auch geschützt/r zeigt nicht an, ob (charread == tempars.length) && (tempchars [tempars.length -]! = '/R') {System.out.print (tempchars); } else {für (int i = 0; i <charread; i ++) {if (tempchars [i] == '/r') {contin;} else {System.out.print (tempchars [i]); }}}}}}}} Catch (Ausnahme e1) {e1.printstacktrace ();} endlich {if (reader! * Lesen Sie eine Einheit, die Dateien enthält, die in der Zeile von -Looking häufig verwendet werden. println ("von Behavioral Unit Nehmen Sie den Inhalt der Datei, die die gesamte Zeile gelesen haben:") Eine Zeile nach dem anderen, bis die Datei als Dateiende gelesen wird. Tempstring) E1) {}} / *** Lesen Sie die Dateien zufällig inhaltlich* / public static void ReadFileByrandomaccess (String -Dateiname) {RandomAccessfile Randomfile = NULL; / Öffnen Sie eine Eins. (); // Die Startposition der Datei int. Datei an der Startindexposition. randomFile.seek (begindex); // Die Anzahl der Bytes, die an Byteread gelesen wurden (Byteread = RandomFile.read (Bytes))! )} Endlich {if (randomFile! void showavaabilityBytes (InputStream in) {try {System.out.println ("Die Anzahl der Bytes im aktuellen Byte -Eingangsstrom ist:" + in Main (String [] args) {String Dateiname = "c: /temp/newtemp.txt";
Fügen Sie den Inhalt zum Ende der Datei hinzu
Öffentliche Klasse appendTOFILE { / ** * Eine Methode Zusätzliche Datei: Verwenden Sie RandomAccessFile * / public static void methoda (String -Dateiname, String -Inhalt) {try {// einen zufälligen Text Tiefenfluss, lesen und schreiben RandomAccessfile Randomfile = New RandomAccessfile ( Dateiname, "RW"); RandomFile.seek (filelength); Void appendMethodb (String -Dateiname, String -Inhalt) {try {// einen Fileer öffnen, und der zweite Parameter im Konstruktor wird geschrieben, um Dateien zu schreiben .CLOSE ();} catch (ioException e) {e.printstacktrace ();} public static void main (String [] args) {String FileName = "c:/temp/n ewtemp.txt"; Append! "; // Methode eine zusätzliche Datei appendTOFile.appendMethoda (FileName, Inhalt); appendTofile.AppendMethoda (" append End. /N "); // Zeigen Sie den Inhalt der Dateiinhalte an, die FromFile.readFileBiles (Filename); // Methode B zusätzliche Dateien appendTOFile.AppendMethodb (Dateiname, Inhalt);
Das obige ist der gesamte Inhalt dieses Artikels.