In this quick article, you'll learn how to create a symbolic link as well as a hard link in Java.
A symbolic or soft link is a just link to the original file, whereas a hard link is a mirror copy of the original file. If the original file is removed, the soft link has no value, because it points to a non-existent file. In case of a hard link, if you delete the original file, it is still usable.
To create a symbolic link in Java 7+, you can use Files.createSymbolicLink()
from Java NIO API. This method takes two parameters: the path of the symbolic link to create and the target of the symbolic link. Here is an example
try {
// symbolic path
Path symbolic = Paths.get("symbolic_dir");
// target path
Path target = Paths.get("dir");
// create symobolic link
Files.createSymbolicLink(symbolic, target);
} catch (IOException ex) {
ex.printStackTrace();
}
To create a hard link to an existing file, you can use Files.createLink()
that also takes two arguments: the link to create and a path to an existing file. Here is an example:
try {
// symbolic path
Path hardLink = Paths.get("hard_file.txt");
// target path
Path target = Paths.get("file.txt");
// create hard link
Files.createLink(hardLink, target);
} catch (IOException ex) {
ex.printStackTrace();
}
Further Reading
You may be interested in other Java I/O articles:
- Reading and Writing Files in Java
- How to Read and Write Text Files in Java
- How to Read and Write Binary Files in Java
- Reading and Writing Files using Java NIO API
- How to read a file line by line in Java
✌️ Like this article? Follow me on Twitter and LinkedIn. You can also subscribe to RSS Feed.