赵雅智_java 网络编程(3)之上传文件和图片 (四)

2014-11-24 09:19:31 · 作者: · 浏览: 3
();
}




//ss.close();

}

}


class JpgThread implements Runnable{

private Socket s;

public JpgThread(Socket s){
this.s=s;
}

@Override
public void run() {
int count=1;
try{
String ip=s.getInetAddress().getHostAddress();

System.out.println(ip+"---connection");
InputStream in=s.getInputStream();

File dir=new File("d:\\picture");

File f=new File(dir,ip+"("+count+").jpg");

while(f.exists())
f=new File(dir,ip+"("+(count++)+").jpg");

FileOutputStream fos=new FileOutputStream(f);

byte[] buf=new byte[1024];

int len=0;

while((len=in.read(buf))!=-1){
fos.write(buf,0,len);
}

OutputStream out=s.getOutputStream();
out.write("上传成功了".getBytes());

fos.close();

s.close();
}catch(Exception e){
e.printStackTrace();
}

}

}

package net.csdn.web;

import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;

public class JpgServer2 {

/**
* @param args
*/
public static void main(String[] args) throws Exception{

ServerSocket ss=new ServerSocket(9009);

while(true){

Socket s=ss.accept();

new Thread(new JpgThread(s)).start();
}




//ss.close();

}

}


class JpgThread implements Runnable{

private Socket s;

public JpgThread(Socket s){
this.s=s;
}

@Override
public void run() {
int count=1;
try{
String ip=s.getInetAddress().getHostAddress();

System.out.println(ip+"---connection");
InputStream in=s.getInputStream();

File dir=new File("d:\\picture");

File f=new File(dir,ip+"("+count+").jpg");

while(f.exists())
f=new File(dir,ip+"("+(count++)+").jpg");

FileOutputStream fos=new FileOutputStream(f);

byte[] buf=new byte[1024];

int len=0;

while((len=in.read(buf))!=-1){
fos.write(buf,0,len);
}

OutputStream out=s.getOutputStream();
out.write("上传成功了".getBytes());

fos.close();

s.close();
}catch(Exception e){
e.printStackTrace();
}

}

}