client.java

来自「java 教程相应的代码 全是自己写的内附注释 很容易看明白的」· Java 代码 · 共 56 行

JAVA
56
字号
package demo.chapter10.socket.file;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.Scanner;

public class Client {

	public static void main(String[] args) {
		Scanner scan = new Scanner(System.in);
		
		String ip = "127.0.0.1";
		int port = 8888;
		
		System.out.println("请输入文件名:");
		String s = scan.nextLine();
		
		try {
			Socket socket = new Socket(ip, port);
			BufferedOutputStream output = 
				new BufferedOutputStream(
					socket.getOutputStream());
			BufferedInputStream input =
				new BufferedInputStream(
					new FileInputStream(new File(s)));
			try {
				byte[] data = new byte[1024];
				while (true) {
					int i = input.read(data);
					if (i == -1)
						break;
					output.write(data, 0, i);
				}
				output.flush();
			} catch (Exception e) {
				// 由于服务器主动断连接,所以会出现异常
			} finally {
				output.close();
				input.close();
				socket.close();
			}
		} catch (UnknownHostException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}

	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?