Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Java

Java FileOutputStream-klasse: Uitgebreide gids

Java FileOutputStream-klasse

Deze tutorial doorloopt de Java FileOutputStream-klasse, de constructors, kernmethoden en praktische voorbeelden.

De FileOutputStream-klasse, onderdeel van het java.io-pakket, stelt je in staat om rauwe bytedata naar bestanden te schrijven. Het breidt de abstracte OutputStream-klasse uit en is essentieel voor binaire bestandsoperaties.

Een FileOutputStream aanmaken

Om een FileOutputStream aan te maken, importeer de klasse uit java.io en instantieer het met een bestandspad of een File-object.

1. Met een bestandspad

// Met append-vlag
FileOutputStream output = new FileOutputStream(String pad, boolean append);
// Zonder append-vlag
FileOutputStream output = new FileOutputStream(String pad);

De append-boolean bepaalt of data aan het einde van het bestand wordt toegevoegd (true) of bestaande inhoud overschrijft (false).

2. Met een File-object

FileOutputStream output = new FileOutputStream(File bestandObject);

Deze constructor koppelt de stream aan het bestand vertegenwoordigd door bestandObject.

Kernmethoden van FileOutputStream

FileOutputStream implementeert verschillende geërfde methoden van OutputStream, elk afgestemd op byte-operaties.

write()

  • write(int b) – schrijft een enkele byte
  • write(byte[] b) – schrijft een volledige byte-array
  • write(byte[] b, int off, int len) – schrijft len bytes uit b beginnend bij offset off

Voorbeeld: Tekst naar een bestand schrijven

import java.io.FileOutputStream;

public class Main {
    public static void main(String[] args) {
        String data = "Dit is een regel tekst in het bestand.";
        try {
            FileOutputStream output = new FileOutputStream("output.txt");
            byte[] array = data.getBytes();
            output.write(array);
            output.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Dit programma creëert output.txt met de bovenstaande zin. De getBytes()-methode converteert de string naar de UTF-8-byterepresentatie.

flush()

De flush()-methode dwingt gebufferde bytes om direct naar het bestand geschreven te worden. Het is nuttig wanneer je moet garanderen dat data persistent is voordat je de stream sluit.

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

public class Main {
    public static void main(String[] args) throws IOException {
        FileOutputStream out = new FileOutputStream("flush.txt");
        String data = "Dit is demo van flush-methode";
        out.write(data.getBytes());
        out.flush();
        out.close();
    }
}

close()

Na het aanroepen van close() is de stream niet meer bruikbaar. Het geeft systeembronnen vrij en zorgt ervoor dat het bestandshandle correct wordt vrijgegeven.

Extra FileOutputStream-methoden

MethodeBeschrijving
finalize()Wordt aangeroepen door de garbage collector om close() te garanderen
getChannel()Retourneert de geassocieerde FileChannel voor geavanceerde bestandsoperaties
getFD()Haalt de onderliggende bestandsdescriptor op

Voor dieper inzicht, raadpleeg de officiële Java FileOutputStream-documentatie.

Java

  1. Java's final-sleutelwoord begrijpen: variabelen, methoden en klassen
  2. Java instanceof operator: een uitgebreide gids
  3. Java-erfenis meesteren: concepten, typen en praktische voorbeelden
  4. Java geneste static classes begrijpen: gebruik, verschillen en voorbeelden
  5. Java anonieme inner classes meesteren: definitie, syntax en praktische voorbeelden
  6. Java Singleton patroon uitgelegd: hoe veilig te implementeren en gebruiken
  7. Java Reflectie meesteren: klassen, methoden en velden inspecteren tijdens runtime
  8. Java ArrayList meesteren: operaties, methoden en best practices
  9. Java ObjectOutputStream: Serialisatie, methoden en praktische voorbeelden
  10. Java Generics: Herbruikbare, type-veilige code bouwen
  11. Java-bestandsbewerkingen onder de knie krijgen met java.io – Aanmaken, lezen, schrijven en verwijderen