[javaSE] 网络编程(URLConnection)

获取URL对象,new出来,构造参数:String的路径

调用URL对象的openConnection()方法,获取URLConnection对象

调用URLConnection对象的getInputStream()方法,获取输入流InputStream对象

读取输出流

import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;

public class UrlDemo {

    /**
     * @param args
     */
    public static void main(String[] args) {
        try {
            URL url=new URL("http://www.baidu.com");
            URLConnection conn=url.openConnection();
            InputStream is=conn.getInputStream();
            byte[] buf=new byte[1024];
            int len=0;
            StringBuilder sb = new StringBuilder();
            while((len=is.read(buf))!=-1){
                sb.append(new String(buf,0,len));
            }
            System.out.println(sb.toString());
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

}

PHP版:

调用函数fopen()方法,获取到输入流资源,参数:String路径,String的’r’读

循环读取,条件:feof()读取到末尾不为真

调用fgets()方法,读取一行获取到String,参数:流资源,长度

<?php
class UrlDemo{
    public static function main(){
        $url="http://www.baidu.com";
        $fp=fopen($url,‘r‘);
        $buf=1024;
        $str="";
        while(!feof($fp)){
            $str.=fgets($fp,$buf);
        }
        echo $str;
    }
}

UrlDemo::main();
时间: 2024-08-08 17:52:04

[javaSE] 网络编程(URLConnection)的相关文章

网络编程 --- URLConnection --- 读取服务器的数据 --- java

使用URLConnection类获取服务器的数据 抽象类URLConnection表示一个指向指定URL资源的活动连接,它是java协议处理器机制的一部分. URL对象的openConnection()方法就是调用了URLStreamHandler的openConnection()方法. 如有疑问请参考:JAVA网络编程[第三版], 如下图: 怎样获取服务器输出的数据呢?代码如下: import java.io.IOException; import java.io.InputStream; i

javase网络编程

ObjectInputStream/ObjectOuputStream : //串行化的类 java.io.Serializable :   //串行化接口 transient:  //临时的,防止串行化过程. protocal :------------  规则.数据格式. http:(应用) :-------------  hyper text transfer protocal  超文本传输协议. ftp(应用层) :-------------  file transfer protoca

[javaSE] 网络编程(概述)

网络通信的步骤, 1.找到对方的ip 2.数据发送到对方指定的应用程序上,为了标识这些应用程序,用数字进行标识,这个数字就是端口 3.定义通信规则,这个规则就称为协议 国际组织定义了通用协议 TCP/IP 网络模型 OSI参考模型 网络分成7层,应用层 ==> 表示层 ==> 会话层 ==> 传输层 (TCP/UDP)==> 网络层 数据链路层 ==> 物理层,数据通过数据封包和数据拆包传递 TCP/IP参考模型 应用层(HTTP,FTP)==> 传输层(TCP/UDP

[javaSE] 网络编程(UDP通信)

UDP发送端 获取DatagramSocket对象,new出来 获取DatagramPacket对象,new出来,构造参数:byte[]数组,int长度,InetAddress对象,int端口 调用DatagramSocket对象的send()方法,发送出去,参数:DatagramPacket对象 调用DatagramSocket对象的close()方法,关闭资源 import java.net.DatagramPacket; import java.net.DatagramSocket; im

[javaSE] 网络编程TCP通信

EffectiveJava%E8%AF%BB%E4%B9%A6%E7%AC%94%E8%AE%B0%E2%80%94%E2%80%94%E5%A4%8D%E5%90%88%E4%BC%98%E5%85%88%E4%BA%8E%E7%BB%A7%E6%89%BF http://auto.315che.com/sbd203/qa23376156.htm?s1 ??????aWieJ9w2??μ??????? ?????EuQNEVmi??????????t http://auto.315che.co

[javaSE] 网络编程(TCP服务端客户端互访阻塞)

客户端给服务端发送数据,服务端收到数据后,给客户端反馈数据 客户端: 获取Socket对象,new出来,构造参数:String的ip地址,int的端口号 调用Socket对象的getOutputStream()方法,获取到OutputStream对象 调用OutputStream对象的write()方法,输出流输出数据,参数:byte[]字节数组 调用Socket对象的getInputStream()方法,获取到InputStream对象 调用InputStream对象的read()方法,读取数

[javaSE] 网络编程(URL)

获取URL对象,new出来,构造参数:String的路径 调用URL对象的getProtocal()方法,获取协议 调用URL对象的getHost()方法,获取主机 调用URL对象的getPath()方法,获取路径 调用URL对象的getFile()方法,获取文件部分 调用URL对象的getQuery()方法,获取查询参数部分 import java.net.URL; public class UrlDemo { /** * @param args */ public static void m

[javaSE] 网络编程(TCP,UDP,Socket特点)

UDP特点: 面向无连接,把数据打包发过去,收不收得到我不管 数据大小有限制,一次不能超过64k,可以分成多个包 这是个不可靠的协议 速度很快 视频直播,凌波客户端,feiQ都是UDP协议 TCP特点: 面向连接,对方必须在 三次握手完成连接,我:在吗:你:我在:我:我知道了 大数据量传输 速度稍慢 Socket: Socket就是网络服务提供的一种机制 通信两段都要Socket 网络通信其实就是Socket间的通信 数据在两个Socket间通过IO传输

[javaSE] 网络编程(TCP-并发上传图片)

客户端: 1.服务端点 2.读取客户端已有的图片数据 3.通过socket输出流将数据发给服务端 4.读取服务端反馈信息 5.关闭 获取Socket对象,new出来,构造参数:String的服务端ip,int的端口号 调用Socket对象的getOutputStream()方法,得到OutputStream输出流对象 获取FileInputStream对象,new出来,构造参数:String的文件路径 while循环调用,条件FileInputStream对象的read()方法,读取到字节数组中