Java skriva till fil

Java Write File



För att lagra data tillfälligt eller permanent för programmeringsändamål måste vi skriva data till en fil. Det finns många klasser och metoder i Java för att skriva data i en fil. Hur olika klasser och metoder kan användas i Java för att skriva data i en fil visas i den här självstudien.

Några nödvändiga klasser och metod för att skriva filer:

writeString () -metod:

Denna metod stöds av Java version 11. Det kan ta fyra parametrar. Dessa är filsökväg, teckensekvens, teckenuppsättning och alternativ. De två första parametrarna är obligatoriska för att denna metod ska kunna skrivas in i en fil. Det skriver tecknen som innehållet i filen. Den returnerar filvägen och kan kasta fyra typer av undantag. Det är bättre att använda när innehållet i filen är kort.







FileWriter -klass:

Om innehållet i filen är kort använder du FileWriter klass att skriva i filen är ett annat bättre alternativ. Det skriver också strömmen av tecken som innehållet i filen som writeString () metod. Konstruktören för denna klass definierar standardteckenkodning och standardbuffertstorlek i byte.



BufferedWriter Class:

Det används för att skriva text till en teckenutmatningsström. Den har en standardbuffertstorlek, men den stora buffertstorleken kan tilldelas. Det är användbart för att skriva karaktär, sträng och array. Det är bättre att slå in den här klassen med vilken skrivarklass som helst för att skriva data till en fil om ingen snabb utmatning krävs.



FileOutputStream -klass:

Den används för att skriva rådata till en fil. FileWriter- och BufferedWriter -klasser används för att bara skriva texten till en fil, men de binära data kan skrivas med hjälp av klassen FileOutputStream.





Följande exempel visar användningen av den nämnda metoden och klasserna.

Exempel-1: Skriv till en fil med metoden writeString ()

Följande exempel visar användningen av the writeString () metod som är under Filer klass för att skriva data till en fil. En annan klass, Väg, används för att tilldela filnamnet en sökväg där innehållet kommer att skrivas. Filer class har en annan metod som heter readString () att läsa innehållet i en befintlig fil som används i koden för att kontrollera att innehållet är korrekt skrivet i filen.



importera java.nio.file.Files;
importera java.nio.file.Path;
importera java.io.IOException;

offentlig klassfwrite1{

offentlig statisk tomhethuvud( Sträng []args) kastar IOException
{
// Tilldela filens innehåll
Sträng text= 'Välkommen till Linuxhint nLär dig java från grundläggande;

// Definiera filens filnamn
Sökvägsfilnamn=Väg.av('file1.txt');

// Skriv in i filen
Filer.writeString(filnamn, text);

// Läs innehållet i filen
Sträng file_content=Filer.readString(filnamn);

// Skriv ut filinnehållet
Systemet .ut.println(file_content);
}
}

Produktion:

Följande utdata visas efter att koden har körts. Här skrivs två rader i filen som visas i utdata.

Exempel-2: Skriv till en fil med FileWriter-klassen

Följande exempel visar användningen av FileWriter -klassen för att skriva innehåll till en fil. Det krävs att man skapar objektet i FileWriter -klassen med filnamnet för att skriva in i en fil. Nästa, skriva () metoden används för att skriva värdet på text variabel i filen. Om något fel uppstår när filen skrivs, kommer ett IOexception att kastas och felmeddelandet skrivs ut från fångstblocket.

// Importera nödvändiga paket
importera java.io.FileWriter;
importera java.io.IOException;

offentlig klassfwrite2{

offentlig statisk tomhethuvud( Sträng []args) {

// Tilldela filinnehållet
Sträng text= 'Den senaste Java -versionen innehåller viktiga förbättringar
för att förbättra prestanda,
+ 'stabilitet och säkerhet för Java
program som körs på din maskin. '
;
Prova
{
// Skapa ett FileWriter -objekt att skriva i filen
FileWriter fWriter= ny FileWriter ('file2.txt');

// Skriv in i filen
fWriter.skriva(text);

// Skriv ut framgångsmeddelandet
Systemet .ut.skriva ut('Filen har skapats med innehållet.');

// Stäng filskrivarobjektet
fWriter.stänga();
}
fånga ( IOException Och)
{
// Skriv ut felmeddelandet
Systemet .ut.skriva ut(Och.getMessage());
}
}
}

Produktion:

Om filinnehållet har skrivits framgångsrikt i filen visas följande utdata. Du kan kontrollera projektmappen för att bekräfta att filen är skapad korrekt eller inte.

Exempel-3: Skriv till en fil med BufferedWriter-klass

Följande exempel visar användningen av BufferedWriter -klass för att skriva in i en fil. Det kräver också att du skapar objektet i BufferedWriter -klassen som FileWriter för att skriva innehåll i filen. Men den här klassen stöder stort innehåll för att skriva in i filen med hjälp av en stor buffertstorlek.

importera java.io.BufferedWriter;
importera java.io.FileWriter;
importera java.io.IOException;
offentlig klassfwrite3{

offentlig statisk tomhethuvud( Sträng []args) {

// Tilldela filinnehållet
Sträng text= 'Lär dig Java enkelt från LinuxHint';

Prova {

// Skapa ett objekt i BufferedWriter
BufferedWriter f_writer= ny BufferedWriter (ny FileWriter ('file3.txt'));
f_writer.skriva(text);

// Skriv ut framgångsmeddelandet
Systemet .ut.skriva ut('Filen har skapats med innehållet.');

// Stäng BufferedWriter -objektet
f_writer.stänga();
}
fånga ( IOException Och)
{
// Skriv ut felmeddelandet
Systemet .ut.skriva ut(Och.getMessage());
}
}
}

Produktion:

Om filinnehållet har skrivits framgångsrikt i filen visas följande utdata. Du kan kontrollera projektmappen för att bekräfta att filen är skapad korrekt eller inte.

Exempel-4: Skriv till en fil med FileOutputStream-klassen

För att skriva data till en fil med FileOutputStream -klassen visas i följande exempel. Det kräver också att skapa objektet för klassen med filnamnet för att skriva data till en fil. Här konverteras stränginnehållet till den byte -matris som skrivs in i filen med hjälp av skriva() metod.

importera java.io.FileOutputStream;
importera java.io.IOException;

offentlig klassfwrite4{

offentlig statisk tomhethuvud( Sträng []args) {

// Tilldela filinnehållet
Sträng fileContent= 'Välkommen till LinuxHint';

Prova {
// Skapa ett objekt för FileOutputStream
FileOutputStream outputStream= ny FileOutputStream ('file4.txt');

// lagra byteinnehåll från strängen
byte[]strToBytes=fileContent.getBytes();

// Skriv in i filen
outputStream.skriva(strToBytes);

// Skriv ut framgångsmeddelandet
Systemet .ut.skriva ut('Filen har skapats med innehållet.');

// Stäng objektet
outputStream.stänga();
}
fånga ( IOException Och)
{
// Skriv ut felmeddelandet
Systemet .ut.skriva ut(Och.getMessage());
}
}
}

Produktion:

Om filinnehållet skrivs framgångsrikt i filen kommer följande utdata att visas. Du kan kontrollera projektmappen för att bekräfta att filen är skapad korrekt eller inte.

Slutsats:

Flera sätt att skriva till en fil visas i den här självstudien med hjälp av olika Java -klasser. Användaren kan välja någon av de klasser som nämns här för att skriva in i en fil baserat på filens innehåll.