Creating file in Java
last modified January 27, 2024
In Java create file tutorial, we show how to create a file in Java. We create files
with built-in classes including File
, FileOutputStream
, and
Files
. We also use two third-party libraries: Apache Commons IO and Google Guava.
A computer file is a computer resource for recording data discretely in a computer storage device.
The tutorials shows five ways to create a file in Java. The examples create empty files.
Java creating file with File
The File's
createNewFile
method creates a new, empty file
named by the pathname if a file with this name does not yet exist.
package com.zetcode; import java.io.File; import java.io.IOException; public class JavaCreateFileEx { public static void main(String[] args) throws IOException { File file = new File("src/main/resources/myfile.txt"); if (file.createNewFile()) { System.out.println("File has been created."); } else { System.out.println("File already exists."); } } }
The createNewFile
returns true if the named file does
not exist and was successfully created; false if the named file
already exists.
Java creating file with FileOutputStream
In the second example, we create a new, empty file with FileOutputStream
.
package com.zetcode; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; public class JavaCreateFileEx2 { public static void main(String[] args) throws FileNotFoundException, IOException { FileOutputStream fout = null; try { fout = new FileOutputStream("src/main/resources/myfile.txt"); } finally { if (fout != null) { fout.close(); } } } }
The file is created when FileOutputStream
object is instantiated.
If the file already exists, it is overridden.
FileNotFoundException
is thrown
if the file exists but is a directory rather than a regular file, does not exist but
cannot be created, or cannot be opened for any other reason.
Java creating file with Files
Java 7 introduced Files
, which consists exclusively of static methods
that operate on files, directories, or other types of files. Its createFile
method creates a new and empty file, failing if the file already exists.
package com.zetcode; import java.io.IOException; import java.nio.file.FileAlreadyExistsException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; public class JavaCreateFileEx3 { public static void main(String[] args) throws IOException { Path path = Paths.get("src/main/resources/myfile.txt"); try { Files.createFile(path); } catch (FileAlreadyExistsException ex) { System.err.println("File already exists"); } } }
The example creates a new, empty file with Files
.
Path path = Paths.get("src/main/resources/myfile.txt");
A Path
object is created. It is used to locate a file in a file system.
Files.createFile(path);
The new file is created with Files.createFile
.
} catch (FileAlreadyExistsException ex) {
FileAlreadyExistsException
is thrown if the file already exists.
Java creating file with Apache Commons IO
The next example creates a file with Apache Commons IO library.
<dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.6</version> </dependency>
For the project we need the commons-io
dependency.
package com.zetcode; import java.io.File; import java.io.IOException; import org.apache.commons.io.FileUtils; public class JavaCreateFileEx4 { public static void main(String[] args) throws IOException { FileUtils.touch(new File("src/main/resources/myfile.txt")); } }
The new file is created with FileUtils.touch
method.
Java creating file with Google Guava
In the following example, we create a new file with Google Guava library.
<dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>23.4-jre</version> </dependency>
For the project we need the guava
dependency.
package com.zetcode; import com.google.common.io.Files; import java.io.File; import java.io.IOException; public class JavaCreateFileEx5 { public static void main(String[] args) throws IOException { Files.touch(new File("src/main/resources/myfile.txt")); } }
The new file is created with Files.touch
. It accepts
a File
as a parameter.
Source
Java Reading, Writing, and Creating Files - tutorial
In this article we have shown several ways how to create a file in Java. We have used built-in tools and third-party libraries.
Author
List all Java tutorials.