Android - 如果路径包含空格,则无法在Web视图中从SD卡打开文本文件?

时间:2012-05-30 15:19:55

标签: android android-intent

我有一个基本的文件浏览器,允许您单击并打开各种文件,但我找到了

a)如果目录包含空格,但文件名不是,则Web视图应用程序找不到该文件    例如。 / mnt / sdcard / elocker / A Sub Folder / TextDocument.txt

b)如果没有空格,一切都很好,Web视图打开并显示.txt文件内容:)    例如。 /mnt/sdcard/elocker/ASubFolder/TextDocument.txt

要获取mime类型并启动给定文件扩展名的意图,我使用以下 -

 Uri myFileUri = Uri.fromFile(aFile);

    try
    {
        Intent myIntent = new Intent(android.content.Intent.ACTION_VIEW);
        String extension = android.webkit.MimeTypeMap.getFileExtensionFromUrl(myFileUri.toString().toLowerCase());
        String mimetype = android.webkit.MimeTypeMap.getSingleton().getMimeTypeFromExtension(extension);
        myIntent.setDataAndType(myFileUri,mimetype);
        startActivityForResult(myIntent, 0);
    }

我相信人们之前已经遇到过这种情况,它可能只是一个基本问题,因为空间无法使用(在网页视图中),但这看起来有点陈旧,我希望更多来自Android,所以我我猜这是我做错的事情;)

=====

修改

Web视图显示以下错误,如您所见,系统添加了%20 - “内容网页://com.android.htmlfileprovider/sdcard/elocker/A%20Sub%20Folder/TextDocument.txt?text / plain可能暂时关闭,或者可能已永久移动到新的网址。”

提前致谢!

1 个答案:

答案 0 :(得分:1)

这似乎只发生在某些Android虚拟设备上,在真实设备上进行测试时没有出现此类问题,文件全部按预期打开。