Ce face Path.of
Path.of("date", "2026", "note.txt") unește numele date într-o cale: date/2026/note.txt pe Linux și macOS, date\2026\note.txt pe Windows. Poți da și o cale întreagă ca un singur text: Path.of("date/2026/note.txt").
Înainte de Java 11 se folosea Paths.get(...), care face exact același lucru și încă funcționează. Textele goale sunt ignorate, iar caracterele interzise de sistem (de exemplu un octet zero) dau InvalidPathException.
Parametri
| Parametru | Descriere |
|---|---|
primul |
Primul nume sau toată calea. |
restul |
Opțional: nume adăugate pe rând. |
uri |
O adresă file:///.... |
Ce returnează
Un Path nou.
Exemple
Exemplul 1: Moduri de a scrie aceeași cale
import java.nio.file.Path;
import java.nio.file.Paths;
public class Main {
public static void main(String[] args) {
Path a = Path.of("date", "2026", "note.txt");
Path b = Path.of("date/2026/note.txt");
Path c = Paths.get("date", "2026", "note.txt");
System.out.println(a);
System.out.println(a.equals(b) + " " + a.equals(c));
System.out.println(Path.of("date", "", "note.txt"));
}
}
Rezultat
date/2026/note.txt
true true
date/note.txt
Exemplul 2: O cale construită din date
Numele folderului vine dintr-o variabilă; Path.of pune separatorul.
import java.nio.file.Path;
public class Main {
public static void main(String[] args) {
String client = "ana-popescu";
int an = 2026;
Path dosar = Path.of("clienti", client, String.valueOf(an), "contract.pdf");
System.out.println(dosar);
System.out.println("Absolută? " + dosar.isAbsolute());
System.out.println(Path.of("/srv", "site").isAbsolute());
}
}
Rezultat
clienti/ana-popescu/2026/contract.pdf
Absolută? false
true
Greșeli frecvente
- Construiești căi lipind texte cu
+ "/" +. Pe Windows și în cazuri cu slash dublu apar probleme; lasăPath.ofsă pună separatorul. - Încerci
new Path(...).Patheste o interfață; foloseștiPath.of.
Comenzi înrudite
Path: Reprezintă calea unui fișier sau folder (ex. date/note.txt); nu verifică dacă fișierul există. toString o dă ca text.Path.resolve: Adaugă o cale la sfârșitul altei căi: folder.resolve(„note.txt”) dă folder/note.txt.Path.toAbsolutePath: Transformă o cale relativă în cale absolută, adăugând în față folderul curent al programului.Files: Clasa cu metode statice pentru lucrul cu fișiere și foldere: citire, scriere, copiere, mutare, ștergere, listare.