2014-11-23 76 views
0

我想从URL中读取文本文件,解析并设置一个arraylist,然后将其添加到我的适配器。然而,每当我尝试启动应用程序,我发现我的信息arraylist没有填充数据。我想知道如何让应用程序从URL读取数据并显示它。在互联网中,我确实拥有对执行者的承诺。Android从URL中读取文本文件并设置arraylist

CardAdapter ca = new CardAdapter(createList(0)); 

    recList.setAdapter(ca); 

    ArrayList<CardInfo> infos = new ArrayList<CardInfo>(); 

    try { 
     URL url = new URL("https://dl.dropboxusercontent.com/u/56230108/events.txt"); 
     BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream())); 
     String line = ""; 
     while ((line = br.readLine()) != null) { 
      Log.e("value", line); 
      String[] a = line.split("\\$EV\\$"); 
      CardInfo info = new CardInfo(); 
      info.title = a[0]; 
      info.desc = a[1]; 
      info.date = a[2]; 
      info.time = a[3]; 
      info.contact = a[4]; 
      infos.add(info); 
     } 
     br.close(); 
    } 
    catch(Exception e) 
    { 

    } 
    if(infos.size() > 0) 
    { 
     ca.add(infos.get(0), 0); 
    } 

回答

0

看起来你只是添加一个单一的项目到您的适配器。试试这个for循环,而不是你的if语句,在你的代码的底部:

for(CardInfo info: infos) 
{ 
    ca.add(info, 0); 
} 
+0

问题是我甚至无法读取URL,我没有得到任何数据输入 – NexusOnly 2014-11-23 04:56:40

0

您忘记使用URLConnection连接链接。

+0

尝试用相关的代码示例来改进答案。请参阅http://stackoverflow.com/help/how-to-answer – SMR 2015-02-25 09:01:01

相关问题