Domanda

C'è qualche personaggio speciale che non può essere una parte del percorso in Windows o Unix che posso usarlo come un separatore?

È stato utile?

Soluzione

Wikipedia elenca utilmente i caratteri riservati per i diversi filesystem . Né NTFS né POSIX accetteranno il nulla o slash (/) caratteri nei nomi dei file. Il carattere barra non è ovviamente una buona separazione, dal momento che è comune nei percorsi POSIX, così forse si potrebbe usare nulla.

Naturalmente nulla non è adatto a tutte le situazioni (ad esempio, di solito non è visibile quando stampata), nel qual caso potrebbe essere necessario utilizzare una sorta di fuga schema .

Java, che si propone di lavorare su diverse piattaforme, non prova nemmeno a trovare un separatore di percorso comune. Invece ogni piattaforma ha il suo carattere, accessibile attraverso un API .

Altri suggerimenti

per quanto riguarda il delimitatore per la variabile d'ambiente PATH? . ; per le finestre, e per Linux

separatore di percorso sono dipendenti dalla piattaforma:

Per le finestre, si tratta di ‘\’ e per UNIX è ‘/’.

Tecnicamente, Unix fa affinché tutti i personaggi in una cartella / nome di file, ad eccezione / naturalmente, che verrebbe interpretato come come parte del percorso. Windows non supporta solo caratteri stampabili e alcuni caratteri speciali esclusi \ / : * ? " < > |.

Vorrei stare attenti con separatori personalizzati perché potrebbero rompersi in futuro, ad esempio, se qualcuno usa unicode e il tuo separatore personalizzato fa parte di un altro personaggio.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top