- import java.io.DataOutputStream;
- import java.io.File;
- import java.io.FileInputStream;
- import java.net.InetSocketAddress;
- import java.net.Socket;
- public class ClientTcpSend {
- public static void main(String[] args) {
- int length = 0;
- byte[] sendBytes = null;
- Socket socket = null;
- DataOutputStream dos = null;
- FileInputStream fis = null;
- try {
- try {
- socket = new Socket();
- socket.connect(new InetSocketAddress("127.0.0.1", 33456),
- 10 * 1000);
- dos = new DataOutputStream(socket.getOutputStream());
- File file = new File("/root/6674541037_c3a9c8b64c_b.jpg");
- fis = new FileInputStream(file);
- sendBytes = new byte[1024];
- while ((length = fis.read(sendBytes, 0, sendBytes.length)) > 0) {
- dos.write(sendBytes, 0, length);
- dos.flush();
- }
- } finally {
- if (dos != null)
- dos.close();
- if (fis != null)
- fis.close();
- if (socket != null)
- socket.close();
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
ServerTcpListener.java:
- import java.net.*;
- import java.io.*;
- public class ServerTcpListener implements Runnable {
- public static void main(String[] args) {
- try {
- final ServerSocket server = new ServerSocket(33456);
- Thread th = new Thread(new Runnable() {
- public void run() {
- while (true) {
- try {
- System.out.println("开始监听...");
- Socket socket = server.accept();
- System.out.println("有链接");
- receiveFile(socket);
- } catch (Exception e) {
- }
- }
- }
- });
- th.run(); //启动线程运行
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- public void run() {
- }
- public static void receiveFile(Socket socket) {
- byte[] inputByte = null;
- int length = 0;
- DataInputStream dis = null;
- FileOutputStream fos = null;
- try {
- try {
- dis = new DataInputStream(socket.getInputStream());
- fos = new FileOutputStream(new File("./cc.jpg"));
- inputByte = new byte[1024];
- System.out.println("开始接收数据...");
- while ((length = dis.read(inputByte, 0, inputByte.length)) > 0) {
- System.out.println(length);
- fos.write(inputByte, 0, length);
- fos.flush();
- }
- System.out.println("完成接收");
- } finally {
- if (fos != null)
- fos.close();
- if (dis != null)
- dis.close();
- if (socket != null)
- socket.close();
- }
- } catch (Exception e) {
- }
- }
- }