URLDecoder类和URLEncoder类
URLDecoder类包含一个decode(String s,String enc)静态方法,它可以看上去是乱码的特殊字符串转化成普通字符。
URLEncoder类包含一个encode(String s,String enc)静态方法,它可以看上去是普通字符字符串转化成application/x-www-from-urlencoded MIME。
编写程序,乱码的特殊字符串转化成普通字符。及普通字符字符串转化成application/x-www-from-urlencoded MIME
package com;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.net.URLEncoder;
public class TestNet4 {
public static void main(String[] args) {
// TODO Auto-generated method stub
try{String str1=URLDecoder.decode("java%E5%BC%80%E5%8F%91","UTF-8");
System.out.println(str1);
String str2=URLEncoder.encode("java程序开发","UTF-8");
System.out.println(str2);
}catch(UnsupportedEncodingException e){
System.out.println(e.getMessage());
}
}
}
Socket的网络编程
编写编程:
package com;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.sql.SQLException;
public class TestNet5 {//发送端代码
public static void main(String[] args) {
// TODO Auto-generated method stub
try{
DatagramSocket ds=new DatagramSocket();//创建socket对象
String str="hello,world!!";//要发送的内容
DatagramPacket dp=new DatagramPacket(str.getBytes(),str.length(),InetAddress.getByName("192.168.13.31"),50000);
ds.send(dp);
System.out.println("发送完毕");
ds.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
package com;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;
public class TestNet6 {
public static void main(String[] args) {//接收端代码
// TODO Auto-generated method stub
try {
DatagramSocket ds=new DatagramSocket(50000);
byte[] buf=new byte[1024];
DatagramPacket dp=new DatagramPacket(buf,1024);
ds.receive(dp);
String str=new String(dp.getData(),0,dp.getLength());
String add=dp.getAddress().getHostAddress();
int port=dp.getPort();
System.out.println(str+"from"+add+":"+port);
System.out.println("获取完毕");
ds.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}