我有一个
我遇到问题的文件名为:
当我将其传递给
WebView
,用于打开存储在项目的assets/
目录中的一些文件。对于大多数文件,它都可以正常工作,但是有一个特定的文件(我确定还有其他我没有发现的文件)它就是无法打开。我遇到问题的文件名为:
"assets/ContentRoot/Photos/XXX Software Logo - jpg - 75%.JPG"
当我将其传递给
WebView
时,如果它显示错误页面,则会显示如下:"file:///android_asset/ContentRoot/Photos/XXX%20Software%20Logo%20-%20jpg%20-%2075%.JPG"
我随后尝试对其运行URLEncoder.encode()
,但是出现了错误页面,并显示了以下URL:
"file:///android_asset/ContentRoot/Photos/XXX+Software+Logo+-+jpg+-+75%.JPG"
这两个URL都无法打开文件(在我看来它们看起来都没问题)。有人有什么想法吗?
更新:如果我手动编码%
(使用%25
,如commonsware.com建议),那么它会加载图像,但它会尝试将其解析为文本,而不是图像,所以我只会得到许多(基本上是)垃圾。
此外,在HTML文档中使用相对URL引用图像也不起作用(可能是因为它没有被解析为图像?):
<img src="../Photos/XXX%20Software%20Logo%20-%20jpg%20-%2075%.JPG" />
<img src="../Photos/XXX%20Software%20Logo%20-%20jpg%20-%2075%25.JPG" />
<img>
中的错误名称并进行了更正...但仍然无法工作。该图像在其他所有地方都可以正常打开(Firefox,GNOME的Eye,GIMP),但为了保险起见,我在GIMP中打开它,稍微修改了一下,然后重新保存。仍然没有成功。 - Jeremy Logan