【问题标题】:Getting and parsing the website content in Android在 Android 中获取和解析网站内容
【发布时间】:2013-05-26 18:56:02
【问题描述】:

已编辑:

大家好,我需要一些帮助。我实际上想获取和使用一些来自 url 的有用数据。我有一个网站,显示有关特定区域的一些重大事故的信息。我想从那个网站获取这些事故的详细信息。我将在 Android-MapView 中用针点显示它们。我怎样才能做到这一点?我经历过它,但仍然无法做到这一点。

【问题讨论】:

    标签: android xml-parsing html-parsing android-parser


    【解决方案1】:

    你可以使用 json 做以下事情

    1>首先将要接收的数据以 json 格式编码到您想要数据的 url。

    2>现在从 android 应用请求编码的 json 数据。

    3>根据您的编码,url 将返回 jsonArray 或 jsonObject

    4>从收到的 json 数组或 json 对象中提取您想要的数据,并根据需要使用它...

    搜索 SO 以了解如何编码和使用 json...希望这会有所帮助

    【讨论】:

    【解决方案2】:

    首先,确保<uses-permission android:name="android.permission.INTERNET" /> 在您的AndroidManifest.xml 中。

    我不明白为什么这样的事情行不通。

    URLConnection connect = someUrl.openConnection();
    BufferedReader in = new BufferedReader(new InputStreamReader(connect.getInputStream()));
    
    ArrayList<String> inputLine = new ArrayList<String>();
    String tempString;
    
    while ((tempString = in.readLine()) != null) {
        inputLine.add(tempString);
    }
    in.close();
    
    for (String s : inputLine) {
        // do stuff
    }
    

    // do stuff 可以是 String.substring 或 String.replace 与 String.startsWith 结合使用的东西,或者您想用来解析 HTML 的任何其他东西。

    您需要添加异常捕获,我可能是错的,但我认为您需要担心的唯一异常是 IOException。

    【讨论】:

      【解决方案3】:

      您可以使用一些库来帮助您进行解析。例如jsoup 或来自here 的内容。不过,我自己从未与这些中的任何一个合作过,所以除了将您指向它们之外,我真的无法以任何其他方式帮助您。但我确信其中至少有一些会有很好的教程和/或文档。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-09-15
        • 1970-01-01
        • 2016-03-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多