Kilka osób wspomina o spacji w nazwie pliku. Wyjaśnię.
Android jest oparty na systemie Linux i dlatego używa systemu plików posix. Oznacza to, że nazwy plików ze spacjami powodują problemy. Nie używaj spacji, jeśli tworzysz plik lub katalog; pomiń je lub użyj kropek ( .
), myślników ( -
) lub znaków podkreślenia ( _
). Aby załadować istniejący plik ze spacją, musisz go zacytować.
Korzystając z przykładu z pytania zastąp:
content://com.android.htmlfileprovider/mnt/sdcard/Documents/To%20Read.html?text/html
z tym:
content://com.android.htmlfileprovider/mnt/sdcard/Documents/"To Read.html"?text/html
Jeśli po prostu otwierasz plik, możesz zacytować cały ciąg. Lubię to:
"/mnt/sdcard/Documents/To Read.html"
Oprócz spacji, które mogą powodować problemy, systemy posiksowe dopuszczają znaki w nazwach plików, które nie są dozwolone w systemie Windows. Aby uniknąć problemów podczas kopiowania plików między systemami, nawet jeśli niektóre są nadal dozwolone również w systemie Windows, nie dołączaj następujących znaków w nazwach plików:/ \ ? * : % " < > | + # '
Aby uniknąć dalszych problemów, używaj spójnego stylu wielkich liter w nazwach plików. Zauważ, że w systemach POSIX rozróżniana jest wielkość liter, co oznacza, że w nazwach plików rozróżniana jest wielkość liter. Oznacza to, że file.txt, FILE.TXT, file.TXT, File.txt, georgE.txt itp. To różne pliki w systemie posix, podczas gdy są one uważane za ten sam plik w systemie Windows.