包含拉丁字符的URL的FileNotFoundException

时间:2012-09-28 17:29:36

标签: android url character latin

我无法加载包含拉丁字符的图片,例如:č,ć,š,đ,ž。 代码可以完美地用于其他链接,但是当它到达这个或任何其他包含拉丁字符时:

InputStream input = null;
            try {
                URL url = new URL(http://www.novosti.rs/upload/thumbs/images/2012//09/28j/Supruga%20Gorana%20Savića_75x45.jpg);
                HttpURLConnection conn = (HttpURLConnection)url.openConnection();
                conn.setDoInput(true);
                conn.connect();
                input = conn.getInputStream();
                Bitmap myBitmap = BitmapFactory.decodeStream(input);
                conn.disconnect();
                return myBitmap;
            } catch (IOException e) {
                e.printStackTrace();
                return null;
            } finally {
                try {
                    input.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }

它抛出一个:

java.io.FileNotFoundException: http://www.novosti.rs/upload/thumbs/images/2012//09/28j/Supruga%20Gorana%20Savića_75x45.jpg

虽然您可以尝试将链接复制到地址栏以查看其有效。 那我该怎么办?

1 个答案:

答案 0 :(得分:2)

尝试使用URLEncoder.encode(String s, String charsetName)将特殊字符转换为%分隔的数字形式。

请参阅URLEncoder文档。