我使用从另一个活动获得的值构造一个字符串:
Bundle b = getIntent().getExtras();
value = b.getString("bundledata");
url = "http://dl.dropbox.com/u/xxx/apptextfiles/";
url += value;
url += ".txt";
所以,字符串网址看起来像http://dl.dropbox.com/u/xxx/apptextfiles/LFC2.txt
稍后我尝试用HttpGet request = new HttpGet(url)读取文本文件 - 并且应用程序崩溃。奇怪的是,如果我写url =“http://dl.dropbox.com/u/xxx/apptextfiles/LFC2.txt”它工作正常,但如果我像上面那样构建它就不行。实际上,如果我从eclipse中获取url值并将其放入浏览器中,它将更改为http://dl.dropbox.com/u/xxx/apptextfiles/%EF%BB%BFLFC2.txt - 为什么?它看起来像som奇怪的编码问题?我从其他活动获得的字符串值也来自在线文本文件。任何人都有关于如何解决这个问题的线索?
答案 0 :(得分:0)
查看http://www.w3schools.com/tags/ref_urlencode.asp
您的网址字符串中的value
字段似乎包含特殊字符 - ï , » and ¿
这就是您引用时对网址进行编码的原因。使用hexeditor或其他东西来确保您的文本文件不包含特殊字符。