I Java er det nemt at oprette en fil ved at bruge foruddefinerede klasser og pakker. Der er tre måder at oprette en fil på.
erstatte fra streng i java
Java File.createNewFile() metode
Det File.createNewFile() er en metode af klassen File, som hører til en java.io pakke. Den accepterer ikke noget argument. Metoden opretter automatisk en ny, tom fil. Metoden returnerer en boolsk værdi:
- sandt, hvis filen blev oprettet.
- false, hvis filen allerede eksisterer.
Når vi initialiserer File-klasseobjektet, angiver vi filnavnet, og så kan vi kalde createNewFile()-metoden for File-klassen for at oprette en ny fil i Java.
Metoden File.createNewFile() kaster java.io.IOException, hvis der opstod en I/O-fejl. Det kaster også SecurityException, hvis der findes en sikkerhedsmanager, og dens SecurityManager.checkWriter(java.lang.String) metode nægter skriveadgang til filen. Signaturen for metoden er:
public boolean createNewFile() throws IOException
Vi kan sende filnavnet eller den absolutte sti eller relativ sti som et argument i File-klasseobjektet. For en ikke-absolut sti forsøger File-objektet at finde filen i den aktuelle mappe.
Eksempel
Følgende eksempel opretter en ny, tom tekstfil. Den første kørsel opretter music.txt med succes, mens den på den anden kørsel mislykkedes. Vi kan oprette enhver filtype ved kun at ændre filtypenavnet.
import java.io.File; import java.io.IOException; public class CreateFileExample1 { public static void main(String[] args) { File file = new File('C:\demo\music.txt'); //initialize File object and passing path as argument boolean result; try { result = file.createNewFile(); //creates a new file if(result) // test if successfully created a new file { System.out.println('file created '+file.getCanonicalPath()); //returns the path string } else { System.out.println('File already exist at location: '+file.getCanonicalPath()); } } catch (IOException e) { e.printStackTrace(); //prints exception if any } } }
Produktion
Når filen ikke eksisterer.
Når filen allerede eksisterer.
Java FileOutputStream
En filoutputstrøm skriver data til en fil. Java FileOutputStream-klassen giver også støtte til filer. Det hører til java.io-pakken. Det gemmer dataene i bytes. Vi bruger FileOutputStream-klassen, når vi skal skrive nogle data ind i den oprettede fil. FileOutputStream-klassen giver en konstruktør til at oprette en fil. Konstruktørens signatur er:
konverter strengdato
public FileOutputStream(String name, boolean append) throws FileNotFoundException
Parametre
navn: er filnavnet
Tilføj: hvis sandt, vil byte blive skrevet til slutningen af filen, ikke i begyndelsen.
Eksempel
I det følgende eksempel har vi oprettet en fil ved hjælp af FileOutputStream.
import java.io.FileOutputStream; import java.util.Scanner; public class CreateFileExample { public static void main(String args[]) { try { Scanner sc=new Scanner(System.in); //object of Scanner class System.out.print('Enter the file name: '); String name=sc.nextLine(); //variable name to store the file name FileOutputStream fos=new FileOutputStream(name, true); // true for append mode System.out.print('Enter file content: '); String str=sc.nextLine()+' '; //str stores the string which we have entered byte[] b= str.getBytes(); //converts string into bytes fos.write(b); //writes bytes into file fos.close(); //close the file System.out.println('file saved.'); } catch(Exception e) { e.printStackTrace(); } } }
Produktion
Java File.createFile() metode
File.createFile() er en metode af File-klassen, som hører til java.nio.fil pakke. Det giver også support til filer. Nio-pakken er buffer-orienteret. CreateFile()-metoden bruges også til at oprette en ny, tom fil. Vi behøver ikke lukke ressourcerne, når vi bruger denne metode. Det er en fordel. Signaturen for metoden er:
public static Path createFile(Path, Attribute) throws IOException
Sti: Stien til filen.
Attribut: En valgfri liste over filattributter.
Metoden returnerer filen.
Følgende eksempel opretter også en ny, tom fil. Vi opretter en Path-instans ved hjælp af en statisk metode i Paths-klassen (java.nio.file.Paths) ved navn Paths.get(). Læg mærke til følgende udsagn:
fuld form af i d e
Sti sti = Paths.get('C:\demo\javaprogram.txt');
I ovenstående linje er Path en grænseflade, og Paths er en klasse. Begge hører til samme pakke. Metoden Paths.get() opretter Path Instance.
import java.io.IOException; import java.nio.file.*; public class CreateFileExample3 { public static void main(String[] args) { Path path = Paths.get('C:\demo\javaprogram.txt'); //creates Path instance try { Path p= Files.createFile(path); //creates file at specified location System.out.println('File Created at Path: '+p); } catch (IOException e) { e.printStackTrace(); } } }
Produktion