2011-12-19 92 views
1

我想从url获取一个csv文件。在指数43非法字符查询::但我得到错误的为什么代码为以下代码抛出IllegalArgumentException?

java.lang.IllegalArgumentException异常

相同的代码正在为其他网址。

try 
{ 
    String result = ""; 
    HttpClient httpClient = new DefaultHttpClient(); 
    HttpContext localContext = new BasicHttpContext(); 
    HttpGet httpGet = new HttpGet("http://in.finance.yahoo.com/d/quotes.csv?s=^BSESN+^NSEI +LML.NS +LT.NS +RELIANCE.NS +HUL.BO+ONGC.NS+GOLDBEES.BO +ITC.NS +Acc.NS+UNITECH.NS +SPANCO.BO +OCL.NS +LAKSHMIO.BO+POWERGRID.BO+PACIF.BO+COALINDIA.NS+SATYAMCOM.NS+Bhel.ns+SBIN.NS+Plethico.ns+COLPAL.NS+USHAMART.NS+MTNL.NS +RUCHINFRA.NS&f=nl1oc1ghpvjk"); 
    HttpResponse response = httpClient.execute(httpGet, localContext); 
    BufferedReader reader = new BufferedReader(new InputStreamReader(response.getEntity().getContent())); 
    try 
    { 
     StringBuffer sb = new StringBuffer(); 
     String line; 
     while((line = reader.readLine())!=null) 
     { 
      String rowData[] = line.split(","); 
      sb.append("\n"+rowData[0]); 
     } 
     t.setText(sb.toString()); 
    } 
    catch (Exception e) { 
     // TODO: handle exception 
    } 
} catch (ClientProtocolException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
} catch (IOException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
} 

在此先感谢..

+0

你的URL必须畸形http://stackoverflow.com/questions/749709/how-to-deal-with-the-urisyntaxexception – 2011-12-19 05:09:35

+0

感谢您的帮助.. – Archana 2011-12-19 05:22:05

回答

0

我猜有可能是您的网址一些未编码符号,尝试将它作为一个参数之前编码您的字符串是:

HttpGet httpGet = new HttpGet(Uri.encode("http://in.finance.yahoo.com/d/quotes.csv?s=^BSESN+^NSEI +LML.NS +LT.NS +RELIANCE.NS +HUL.BO+ONGC.NS+GOLDBEES.BO +ITC.NS +Acc.NS+UNITECH.NS +SPANCO.BO +OCL.NS +LAKSHMIO.BO+POWERGRID.BO+PACIF.BO+COALINDIA.NS+SATYAMCOM.NS+Bhel.ns+SBIN.NS+Plethico.ns+COLPAL.NS+USHAMART.NS+MTNL.NS +RUCHINFRA.NS&f=nl1oc1ghpvjk")); 
相关问题