Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/189.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android XML请求不';t解析'+';加号_Android_Xml - Fatal编程技术网

Android XML请求不';t解析'+';加号

Android XML请求不';t解析'+';加号,android,xml,Android,Xml,我正在查询雅虎财经的股票报价,格式如下: [网站]?s=[股票代码]+[股票代码]。。。。。等 它可以单独工作,但当我添加+并一次执行两个时,返回的CSV显示“缺少格式变量”。我尝试了%2B,但没有成功 周围的代码如下 URL url = new URL("http://finance.yahoo.com/d/quotes.csv?s=USDGBP=X+USDEUR=X&f=l1"); InputStreamReader isr = new InputStreamReader(u

我正在查询雅虎财经的股票报价,格式如下:

[网站]?s=[股票代码]+[股票代码]。。。。。等

它可以单独工作,但当我添加+并一次执行两个时,返回的CSV显示“缺少格式变量”。我尝试了%2B,但没有成功

周围的代码如下

URL url = new URL("http://finance.yahoo.com/d/quotes.csv?s=USDGBP=X+USDEUR=X&f=l1");
InputStreamReader isr = new InputStreamReader(url.openConnection().getInputStream());
String[] yahooRateInfo = new BufferedReader(isr).readLine().split(",");
Double rateGBP = Double.parseDouble(yahooRateInfo[0]);
Double rateEUR = Double.parseDouble(yahooRateInfo[1]);
提前谢谢

Dre

试试这个:

URL url = new URL("http://finance.yahoo.com/d/quotes.csv?s=USDGBP=X+USDEUR=X&f=l1");
InputStreamReader isr = new InputStreamReader(url.openConnection().getInputStream());
BufferedReader yahooRateInfo = new BufferedReader(isr);
try {
Double rateGBP = Double.parseDouble(yahooRateInfo.readLine());
Double rateEUR = Double.parseDouble(yahooRateInfo.readLine());
} catch(NumberFormatException e) {
   Log.d(TAG, "error parsing rates",e);
}

它不会因为“+”符号而失败,而是因为第二个get参数的格式不正确。

显示调用此参数的代码。尽管该URL确实返回值,但它只返回第一个值。i、 e.0.1234,它应该返回0.1234,0.5678。您看到第二行了吗?这不是你要寻找的第二个值吗?当我通过桌面进行操作时,第二行会显示出来,但在Android上不会显示出来