A few people allude to the issue of having spaces in the file name. I will clarify.
Android is based on Linux, and therefore uses a posix file system. This means that file names with spaces cause issues. Don't use spaces if you are creating a file or directory; leave them out or use periods (.
), dashes (-
), or underscores (_
). To load an existing file with space in it, you must quote the file.
Using the example from the question replace:
content://com.android.htmlfileprovider/mnt/sdcard/Documents/To%20Read.html?text/html
with this:
content://com.android.htmlfileprovider/mnt/sdcard/Documents/"To Read.html"?text/html
If you are otherwise simply opening a file, you may quote the whole string. Like this:
"/mnt/sdcard/Documents/To Read.html"
In addition to spaces which can cause problems, posix systems permit characters in file names that are not permitted in Windows. To avoid issues when copying files between systems, even though some are still permitted on Windows as well, do not include the following characters in file names: / \ ? * : % " < > | + # '
To avoid further problems use a consistent style of capitalization in file names. Note that posix systems are case sensitive, which means file names are case sensitive. This means that file.txt, FILE.TXT, file.TXT, File.txt, georgE.txt, etc. are all different files on a posix system, while they are considered the same file on Windows.
file://
in a browser app of your choice.