Java获取网络数据

找了一个爬虫的Demo,敲了一下。

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.*;

public class Main {

    public static void main(String[] args) {
    
    String url = "http://www.baidu.com";
    
    String result = "";
    
    BufferedReader in = null;
    
    try {
        
        //生成URL
        URL realUrl = new URL(url);
        
        //初始化连接到特定URL的连接通道
        URLConnection connection = realUrl.openConnection();
        
        //开始实际连接
        connection.connect();
        
        //数据读取
        in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
        
        //临时存储一行数据
        String line;
        
        while((line = in.readLine()) != null) {
            result += line;
        }
    } catch (Exception e) {
        
        e.printStackTrace();
    } finally {
        
        try {
            if (in != null) {
                in.close();
            }
        } catch (Exception e2) {
            
            e2.printStackTrace();
        }
    }
    
    System.out.println(result);
  }
}

Java中I/O的设计还Objective-C的区别非常大。关于Java I/O设计可以参考这篇文章。

java I/O库中设计模式的应用:http://my.oschina.net/gao0516/blog/136103

Java字节流和字符流

在iOS里面socket里也有使用到NSStream,应该和Java是类似的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,958评论 25 709
  • 背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcod...
    土汪阅读 14,354评论 0 33
  • 看着那些照片, 我很心疼 ,原来为了生活 你也会变成自己不喜欢的样子。
    如果C阅读 1,256评论 0 0
  • 刚刚看到《梦想演说家》寇乃馨的演讲遇见更好的自己,要遇见更好的自己我们就必须要控制自己愤怒时的情绪,避免让自己愤...
    油油的悠悠阅读 2,383评论 1 1
  • 太阳落在晚霞之后,天空昏黄,这是开元十七年秋季的一天。 在结束了一天的繁忙与喧闹之后,洛阳这座举世的锦城逐渐陷...
    古城巷歌阅读 3,003评论 0 2

友情链接更多精彩内容