socket网络编程例子:File对象的delete方法:删除本地文件
File对象的delete方法:删除本地文件,客户端代码
package com.my.test;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.Scanner;
public class ClientDel {
static String clientBase = "E:\\Java\\serverDel\\";
static Scanner sc = new Scanner(System.in);
static void connectServer(String serverIp, int serverPort) throws UnknownHostException, IOException {
Socket socket = new Socket(serverIp, serverPort);
InputStream is = socket.getInputStream();
OutputStream os = socket.getOutputStream();
System.out.println("文件有如下:");
File file = new File(clientBase);
if (file.isDirectory()) {
File[] files = file.listFiles();
for (int i = 0; i < files.length; i++) {
if (files[i].isDirectory()) {
System.out.println("文件夹:"+files[i].getPath());
} else {
System.out.println("文件:"+files[i].getPath());
}
}
} else {
System.out.println("文件:"+file.getPath());
}
System.out.println("请输入指令:");
String cmd = sc.nextLine();
os.write(cmd.getBytes());
byte[] buff = new byte[1024];
int count = 0;
count = is.read(buff);
String result = null;
if (count > 0) {
result = new String(buff, 0, count);
System.out.println(result);
}
socket.close();
}
public static void main(String[] args) throws UnknownHostException, IOException {
connectServer("localhost", 9090);
}
}
File对象的delete方法:删除本地文件,服务器端代码
package com.my.test;
import java.io.File;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class ServerDel {
static String serverBase = "E:\\Java\\serverDel\\";
static void startServer(int port) throws Exception {
@SuppressWarnings("resource")
ServerSocket server = new ServerSocket(port);
System.out.println("服务器等待客户端连接...");
Socket socket = server.accept();
InputStream is = socket.getInputStream();
OutputStream os = socket.getOutputStream();
byte[] buff = new byte[1024];
int count = 0;
String cmd = null;
count = is.read(buff);
if (count>0) {
cmd = new String(buff,0,count);
System.out.println("服务器收到命令...");
String[] strs = cmd.split(" ");
String path = serverBase + strs[1];
File file = new File(path);
if (file.delete()) {
os.write("delete success!".getBytes());
} else {
os.write("文件不存在!".getBytes());
}
}
server.close();
}
public static void main(String[] args) throws Exception {
startServer(9090);
}
}