Quelques personnes font allusion au problème des espaces dans le nom du fichier. Je vais préciser.
Android est basé sur Linux, et utilise donc un système de fichiers posix. Cela signifie que les noms de fichiers contenant des espaces posent des problèmes. N'utilisez pas d'espaces si vous créez un fichier ou un répertoire ; laissez-les ou utilisez des points ( .
), les tirets ( -
), ou des tirets bas ( _
). Pour charger un fichier existant contenant des espaces, vous devez citer le fichier.
En utilisant l'exemple de la question remplacer :
content://com.android.htmlfileprovider/mnt/sdcard/Documents/To%20Read.html?text/html
avec ça :
content://com.android.htmlfileprovider/mnt/sdcard/Documents/"To Read.html"?text/html
Si vous ne faites qu'ouvrir un fichier, vous pouvez citer la chaîne entière. Comme ceci :
"/mnt/sdcard/Documents/To Read.html"
Outre les espaces qui peuvent poser problème, les systèmes posix autorisent des caractères dans les noms de fichiers qui ne sont pas autorisés sous Windows. Pour éviter les problèmes lors de la copie de fichiers entre systèmes, même si certains sont encore autorisés sous Windows également, n'incluez pas les caractères suivants dans les noms de fichiers : / \ ? * : % " < > | + # '
Pour éviter d'autres problèmes, utilisez un style cohérent de capitalisation dans les noms de fichiers. Notez que les systèmes posix sont sensibles à la casse, ce qui signifie que les noms de fichiers sont sensibles à la casse. Cela signifie que file.txt, FILE.TXT, file.TXT, File.txt, georgE.txt, etc. sont tous des fichiers différents sur un système posix, alors qu'ils sont considérés comme le même fichier sous Windows.
2 votes
Question similaire (plus récente) qui traite également d'autres types de fichiers : Comment puis-je ouvrir des fichiers locaux dans le navigateur Android par défaut ?
0 votes
Il existe également une application pour cela, " ouvrir dans le navigateur qui vous permet de cliquer sur un fichier html dans un gestionnaire de fichiers et d'ouvrir la fenêtre correspondante.
file://
dans une application de navigateur de votre choix.