package swing;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
public class httptx {
public static void main(String[] args) {//主函数
new httpget().start();//开启这个线程
}
static class httpget extends Thread{
public void run() {//线程的run方法
try {
URL url=new URL(“https://www.csdn.net/”);//类 URL代表统一资源定位符,获取这个网站的地址
URLConnection connection=url.openConnection();//连接上这个网站
InputStream in=connection.getInputStream();//创建输入流,把网站内容读到流中
InputStreamReader ir=new InputStreamReader(in,“UTF-8”);//InputStreamReader作用是把字符转化为字符串,对象是缓存中的内容,编码规则采用utf-8
BufferedReader br=new BufferedReader(ir);//创建缓存流
String line;//定义一个字符串
StringBuilder builder=new StringBuilder();//利用字符串生成器创建一个字符串对象
while((line=br.readLine())!=null) {//如果读取的内容不为空,则执行下面的程序
builder.append(line+"\n");//把读取的内容添加到字符串中
}
br.close();//关闭流
ir.close();
in.close();
System.out.println(builder);//输出字符串的内容
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
点击运行后可以得到优酷主页www.youku.com网页的源代码,但是我们需要将控制台显示行数调到最高,在Myeclipse中点击Windows→Preferences→Run/Debug→Console→Console buffer size设置为1000000才能显示该代码
public class posttx {
public static void main(String[] args) {//主函数
new pp().start();//启动线程
}
static class pp extends Thread{
public void run() {//实现run方法
try {
URL url=new URL(“http://fanyi.youdao.com/openapi.do”);//获取网络地址
URLConnection connection =url.openConnection();//连接上网络地址
connection.addRequestProperty(“encoding”, “utf-8”);//添加一个由一个键值对指定的通用请求属性
connection.setDoInput(true);//允许从服务器上获取数据
connection.setDoOutput(true);//允许从服务器上传输数据
((HttpURLConnection) connection).setRequestMethod(“POST”);//设置请求模式
OutputStream out=connection.getOutputStream();//创建输出流
OutputStreamWriter opw=new OutputStreamWriter(out);//把字符转化为字节
BufferedWriter bw=new BufferedWriter(opw);//创建缓冲
bw.write(“keyfrom=&key=&type=data&doctype=&version=1.1&q=welcome”);//写入的内容
bw.flush();//刷新
InputStream in=connection.getInputStream();//创建输入流
InputStreamReader id=new InputStreamReader(in);//把字节转化为字符
BufferedReader bf=new BufferedReader(id);//创建缓冲
String line ;//定义字符串
StringBuilder builder=new StringBuilder();//生成一个字符串对象
while((line =bf.readLine())!=null) {//如果读到的值不为空
builder.append(line);//把读到的值添加到字符串中
}
bw.close();opw.close();out.close();//关闭流
bf.close();id.close();in.close();
System.out.println(builder.toString());//输出字符串
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
package swing;
import java.io.BufferedReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
public class httptx {
public static void main(String[] args) {//主函数
new httpget().start();//开启这个线程
}
static class httpget extends Thread{
public void run() {//线程的run方法
try {
URL url=new URL(“https://www.youku.com”);//类 URL代表统一资源定位符,获取这个网站的地址
URLConnection connection=url.openConnection();//连接上这个网站
InputStream in=connection.getInputStream();//创建输入流,把网站内容读到流中
InputStreamReader ir=new InputStreamReader(in,“UTF-8”);//InputStreamReader作用是把字符转化为字符串,对象是缓存中的内容,编码规则采用utf-8
BufferedReader br=new BufferedReader(ir);//创建缓存流
String line;//定义一个字符串
StringBuilder builder=new StringBuilder();//利用字符串生成器创建一个字符串对象
while((line=br.readLine())!=null) {//如果读取的内容不为空,则执行下面的程序
builder.append(line+"\n");//把读取的内容添加到字符串中
}
br.close();//关闭流
ir.close();
in.close();
System.out.println(builder);//输出字符串的内容
FileWriter fw=new FileWriter("word.txt");
fw.write(builder.toString());
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
利用文件输出流把字符串的内容写道文件中