server.java

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

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

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;

public class Server {

	public static void main(String[] args) throws IOException {
		// 在8888端口创建一个 ServerSocket
		ServerSocket server = new ServerSocket(8888);
		// 循环等待客户的连接
		while(true) {
			// 主线程会一直阻塞到客户连接的传入
			Socket socket;
			try {
				socket = server.accept();
				BufferedOutputStream output = 
					new BufferedOutputStream(
						new FileOutputStream(
								new File(socket.getPort() + ".tmp")));
				byte[] data = new byte[1024];
				while (true) {
					
					int i = socket.getInputStream().read(data);
					if (i == -1)
						break;
					output.write(data, 0, i);
				}
				
//				input.close();
				output.close();
				socket.close();
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			
		}
	}

}

⌨️ 快捷键说明

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