import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.rmi.server.SocketSecurityException;
public class Test7_Server {
/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
//与客户端建立连接
ServerSocket server = new ServerSocket(6060);
System.out.println("服务器已启动绑定6060端口!");
while(true){
final Socket socket = server.accept();
new Thread(){ //采用多线程
public void run(){
try { //输入输出流
InputStream is = socket.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
PrintStream ps = new PrintStream(socket.getOutputStream());
//读取 客户端发来的文件
String fileName = br.readLine();
//判断服务器本地是否已有此文件
File dir = new File("update");
dir.mkdir();
File file = new File(dir,fileName);
if(file.exists()){
ps.println("文件已经存在!");
socket.close();
return;
}else {
ps.println("文件不存在!");
}
//文件不存在,建立输出流
FileOutputStream fos = new FileOutputStream(file);
byte arr[] = new byte [8192];
int len;
while((len = is.read()) != -1){
fos.write(arr,0,len);
}
System.out.println("文件上传完毕!");
fos.close();
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}.start();
}
}
}
Tcp上传文件 服务器端
最新推荐文章于 2022-09-19 21:53:04 发布