package net; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.Socket; import java.net.UnknownHostException; public class UploadPicClient { public static void main(String[]args)throws IOException,UnknownHostException{ Socket s = new Socket("192.168.1.2",7856); FileInputStream fis = new FileInputStream("e:\\data\\1.jpg"); OutputStream os = (s.getOutputStream()); int len = 0 ; byte[]buf = new byte[1024]; while((len=fis.read(buf))!=-1){ os.write(buf,0,len); os.flush(); } s.shutdownOutput(); InputStream in = (s.getInputStream()); byte[]bufin = new byte[1024]; while((len=in.read(bufin))!=-1){ System.out.println(new String(bufin,0,len)); } fis.close(); s.close(); } }
package net; import java.io.*; import java.net.*; public class UploadPicServer { public static void main(String[]args)throws IOException{ ServerSocket ss = new ServerSocket(7856); while(true){ Socket s = ss.accept(); new Thread(new Task(s)).start(); } } }
package net; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import java.io.OutputStream; import java.net.Socket; public class Task implements Runnable { private Socket s; public Task(Socket s){ this.s=s; } @Override public void run() { int count=0; try{ File dir = new File("e:\\pic"); if(!dir.exists()){ dir.mkdirs(); } String ip = s.getInetAddress().getHostAddress(); File file = new File(dir,ip+".jpg"); while(file.exists()){ file = new File(dir,ip+"("+(++count)+")"+".jpg"); } InputStream in = s.getInputStream(); FileOutputStream fos = new FileOutputStream(file); byte[]buf = new byte[1024]; int len = 0; while((len=in.read(buf))!=-1){ fos.write(buf,0,len); fos.flush(); } OutputStream out = s.getOutputStream(); out.write("上传成功".getBytes()); out.flush(); s.close(); fos.close(); }catch(Exception e){ } } }