题目要求服务器端向客户端发送一个文件 客户端将文件保存并反馈“发送成功”给服务器端
我的代码如下 为啥没法将文件内容写入到客户端文件夹里 求大佬帮忙
public class tcptest { @Test public void client() throws IOException { Socket socket=new Socket(InetAddress.getByName("127.0.0.1"),8990); InputStreamReader isr=new InputStreamReader(socket.getInputStream()); BufferedReader br=new BufferedReader(isr); FileWriter fw=new FileWriter(new File("ClientData.txt")); String str=null; char i='1'; while((str=br.readLine())!=null) { System.out.println("afhua"); fw.write("aksnfdas"); //fw.write(i+" "+str+'\n'); i++; } System.out.println("knfkdsanf"); BufferedOutputStream bos=new BufferedOutputStream(socket.getOutputStream()); bos.write("接收成功".getBytes()); fw.close(); br.close(); socket.close(); bos.close(); } @Test public void sever() throws IOException { ServerSocket ss=new ServerSocket(8990); Socket socket=ss.accept(); OutputStreamWriter osw=new OutputStreamWriter(socket.getOutputStream()); FileReader fr=new FileReader("SeverData.txt"); BufferedReader br=new BufferedReader(fr); String str; while((str=br.readLine())!=null) { osw.write(str+'\n'); } socket.shutdownOutput(); BufferedInputStream bis=new BufferedInputStream(socket.getInputStream()); ByteArrayOutputStream baos=new ByteArrayOutputStream(); byte[] buffer=new byte[2]; int len; while((len=bis.read(buffer))!=-1) { baos.write(buffer,0,len); } System.out.println(baos.toString()); osw.close(); br.close(); socket.close(); ss.close(); bis.close(); baos.close(); } }