客户端:
package org.tizen.test;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.InetAddress;
import java.net.Socket;
public class TestSocket {
public static void main(String []str)
{
OutputStream os = null;
Socket socket = null;
FileInputStream fis = null;
try {
//1.创建socket的对象,通过构造器指明服务端的IP地址,以及接收的端口号
socket = new Socket(InetAddress.getByName("192.168.1.104"),9000);
//2.getOutputStream发送数据,返回OutputStream
os = socket.getOutputStream();
fis = new FileInputStream("Mytravel.jpg");
//3.具体的输出过程
byte []b = new byte[20];
int len;
while((len = fis.read(b))!=-1)
{
os.write(b,0,len);
}
System.out.println("客户端发送完成");
} catch (Exception e) {
// TODO: handle exception
}finally
{
//4.关闭具体的流和socket
if(os!=null)
{
try {
os.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(socket!=null)
{
try {
socket.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(fis!=null)
{
try {
fis.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
服务端:
package org.tizen.test;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class TestTCPIP {
public static void main(String []str)
{
FileOutputStream fos = null;
ServerSocket ss = null;
Socket s = null;
InputStream is = null;
try {
ss = new ServerSocket(9000);
s = ss.accept();
is = s.getInputStream();
fos = new FileOutputStream("MyImage.jpg");
byte[] b = new byte[20];
int len;
while((len = is.read(b))!=-1)
{
fos.write(b, 0, len);
fos.flush();
//System.out.println(len);
//String str1 = new String(b,0,len);
//System.out.println(str1);
}
System.out.println("服务端接收完毕");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally
{
if(ss != null)
{
try {
ss.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(s!=null)
{
try {
s.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(fos!=null)
{
try {
fos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}