Alcune persone alludono al problema di avere spazi nel nome del file. Chiarirò.
Android si basa su Linux e quindi utilizza un file system posix. Ciò significa che i nomi dei file con spazi causano problemi. Non usare spazi se stai creando un file o una directory; lasciarli fuori o usare punti ( .
), trattini ( -
) o caratteri di sottolineatura ( _
). Per caricare un file esistente con spazio al suo interno, è necessario citare il file.
Utilizzando l'esempio della domanda sostituisci:
content://com.android.htmlfileprovider/mnt/sdcard/Documents/To%20Read.html?text/html
con questo:
content://com.android.htmlfileprovider/mnt/sdcard/Documents/"To Read.html"?text/html
Se altrimenti stai semplicemente aprendo un file, puoi citare l'intera stringa. Come questo:
"/mnt/sdcard/Documents/To Read.html"
Oltre agli spazi che possono causare problemi, i sistemi posix consentono caratteri nei nomi di file non consentiti in Windows. Per evitare problemi durante la copia di file tra sistemi, anche se alcuni sono ancora consentiti anche su Windows, non includere i seguenti caratteri nei nomi dei file:/ \ ? * : % " < > | + # '
Per evitare ulteriori problemi, utilizzare uno stile coerente di maiuscole nei nomi dei file. Si noti che i sistemi posix fanno distinzione tra maiuscole e minuscole, il che significa che i nomi dei file fanno distinzione tra maiuscole e minuscole. Ciò significa che file.txt, FILE.TXT, file.TXT, File.txt, georgE.txt, ecc. Sono tutti file diversi su un sistema posix, mentre sono considerati lo stesso file su Windows.