Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/394.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/187.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.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
Java 如何从URL获取数据?_Java_Android_Url - Fatal编程技术网

Java 如何从URL获取数据?

Java 如何从URL获取数据?,java,android,url,Java,Android,Url,我在网站上提供了数据,如下图所示: 本网站提供了一些参数值,这些参数会随时更新。 现在我想根据Android应用程序中的列名和行号检索这些数据,我知道如何打开http连接。但不幸的是,我不知道从哪里开始,也不知道如何读取图像中提供的数据。除非您有特殊的数据源,否则您必须读取网站的内容,然后手动处理。下面是来自的关于如何从URL连接读取的链接 import java.net.*; import java.io.*; public class URLConnectionReader {

我在网站上提供了数据,如下图所示:

本网站提供了一些参数值,这些参数会随时更新。
现在我想根据Android应用程序中的列名和行号检索这些数据,我知道如何打开http连接。但不幸的是,我不知道从哪里开始,也不知道如何读取图像中提供的数据。

除非您有特殊的数据源,否则您必须读取网站的内容,然后手动处理。下面是来自的关于如何从URL连接读取的链接

import java.net.*;
import java.io.*;

public class URLConnectionReader {
    public static void main(String[] args) throws Exception {
        URL oracle = new URL("http://www.oracle.com/");
        URLConnection yc = oracle.openConnection();
        BufferedReader in = new BufferedReader(new InputStreamReader(
                                yc.getInputStream()));
        String inputLine;
        while ((inputLine = in.readLine()) != null) 
            System.out.println(inputLine);
        in.close();
    }
}

编辑:

如果您在代理之后,还应将这些系统属性设置为适当的值:


您必须解析整个内容。您不能调用Web服务来获取此数据,或者直接调用属于此视图的数据库吗?

如果数据仅为明文且表的格式没有更改,您可以解析整个表,例如,在读取“----…”行后,您可以使用扫描仪解析值:

 Scanner s;
 while ((inputLine = in.readLine()) != null)
 {
   s = new Scanner(input).useDelimiter(" ");
   //Then readthe Values like
   value = s.next()); // add all values in a list or array       
 } 
 s.close();

你有没有网站服务来获取这些数据?实际的URL:但我认为你写的代码会读取整个页面,我想知道如何读取表元素它读取整个页面。您可以在阅读时跳过字符,直到找到表为止(如果您知道它是如何开始的),但正如我所说的,默认情况下,无法自动处理纯文本。。。一旦你有了网站内容,正则表达式就可以帮助你了。在你得到内容后,你可以解析de html文档,只获取你需要的数据。我有一个小问题,你是说变量inputLine包含整个页面的数据吗?对不起,我的愚蠢question@Amr将此视为整体并不是那么有效,但没有其他更好的选择,要么考虑创建Web服务,要么将整个数据存储在数据库上。
 Scanner s;
 while ((inputLine = in.readLine()) != null)
 {
   s = new Scanner(input).useDelimiter(" ");
   //Then readthe Values like
   value = s.next()); // add all values in a list or array       
 } 
 s.close();