diff --git a/core-java-modules/core-java-20/src/main/java/com/baeldung/convertpaths/RelativePathConverter.java b/core-java-modules/core-java-20/src/main/java/com/baeldung/convertpaths/RelativePathConverter.java new file mode 100644 index 0000000000..8e166aa441 --- /dev/null +++ b/core-java-modules/core-java-20/src/main/java/com/baeldung/convertpaths/RelativePathConverter.java @@ -0,0 +1,30 @@ +package com.baeldung.convertpaths; + +import java.io.File; +import java.nio.file.FileSystems; +import java.nio.file.Path; +import java.nio.file.Paths; + +public class RelativePathConverter { + + public static String convertToAbsoluteUsePathsClass(String relativePath) { + Path absolutePath = Paths.get(relativePath).toAbsolutePath(); + return absolutePath.toString(); + } + + public static String convertToAbsoluteUseFileClass(String relativePath) { + File file = new File(relativePath); + return file.getAbsolutePath(); + } + + public static String convertToAbsoluteUseFileSystemsClass(String relativePath) { + Path absolutePath = FileSystems.getDefault().getPath(relativePath).toAbsolutePath(); + return absolutePath.toString(); + } + + public static void main(String[] args) { + String relativePath = "myFolder/myFile.txt"; + String absolutePath = convertToAbsoluteUseFileSystemsClass(relativePath); + System.out.println("Absolute Path: " + absolutePath); + } +}