Visualizzazione dei risultati da 1 a 6 su 6

Discussione: split di path

  1. #1

    split di path

    Ciao!!
    Come faccio a splittare un path di questo tipo:
    C:\cartella1\catella2\file.png
    a me servirebbe prendere il nome del file (file.png) quindi immagino devo fare uno split su "\" ma anke mettendo split("\\") non mi funge...qualche soluzione?
    Merci!

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: split di path

    Originariamente inviato da jed84
    C:\cartella1\catella2\file.png
    a me servirebbe prendere il nome del file (file.png) quindi immagino devo fare uno split su "\" ma anke mettendo split("\\") non mi funge...
    Ci vogliono 4 \ .... perchè? Semplice: Nelle espressioni regolari il \ è un carattere speciale, quindi per matchare davvero quello si deve mettere \\. Dovendo mettere questo in una stringa literal, pure qui i \ sono speciali e va fatto l'escape anche in questo caso.

    Risultato: split("\\\\");
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,327
    Domanda: per ottenere il nome del file non è più semplice questa?

    codice:
    String path = "...";   // Il tuo path
    String nomeFile = path.substring(path.lastIndexOf("\\")+1, path.length());
    Senza rodersi l'anima con le RegEx e lo split...


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    beh scusa l'intromissione ma credo che splittare il percorso di un filesystem con il metodo split non sia la cosa migliore..se cambi sistema operativo?

    cmq sia ti consiglio di istanzianrti un oggetto FILE package java.io.etc etc
    e ti diverti:
    getAbsolutePath()
    getCanonicalFile()
    getCanonicalPath()
    getName()
    getParent()
    getParentFile()
    getPath()

    ETC ETC ETC ETC ETC..
    BYEEEEEE

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,327
    Concordo con morpheus4java.
    Se proprio non vuoi istanziare un oggetto File, puoi ricorrere a questo:
    codice:
    String path = "...";   // Il tuo path
    String nomeFile = path.substring(path.lastIndexOf(File.separator)+1, path.length());
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  6. #6
    Perfect!! Ultima soluzione la migliore probabilmente!!! Grazie mille!!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.