请问高手们,在即时通信软件设计中,
如何实现两已知IP客户端之间的文件传输,
小妹是菜鸟,知道的帮个忙啊
如何实现两已知IP客户端之间的文件传输,
小妹是菜鸟,知道的帮个忙啊
解决方案 »
- 有关java的Webservice问题,求大神解决
- 领域模型图和实体联系图(ER图)有什么区别
- 10进制变成26进制,如何做
- 修改密码不成功?为什么?请各位高手帮忙?
- 哪位高手帮帮小弟,一个随机生成不同数字的问题!!!!!急用!!!!!
- ====如何动态地移家按钮 Button==========================???
- 求JFreeChart方面的资料
- 关于ORACLE中BLOB字段的问题
- 大家说手工编写JAVA应用程序好不好?
- 一些空间厂商的CGI程序可以在线、即时开通注册域名或空间...Apache上比较好弄...可是在IIS上如何实现?
- 关于class.forNname
- 请问:xpath,xquery这些技术现在用的多吗?
客户端创建一个socket,去连接对等端Server的指定端口,Server端
创建一个ServerSocket来监听连接,有新连接过来就给它指定一个socket
然后相互传输文件,根据程序需要: Client Server
| |
create socket create ServerSocket
| |
connect to server accept socket from client
| |
send/recieve msg recieve/send msg如果想看P2P见这里:http://blog.jy.js.cn/14906/viewspace_13895.html====================================
最后,MM我亲一口吧!
import java.net.*;
class ServerTest{
public static final int Port=8080;
public ServerTest(String fileName){
try{
ServerSocket server=new ServerSocket(Port);
try{
Socket connection=server.accept();
System.out.println("Connection to client succeed");
File file=new File(fileName);
System.out.println(file.getName());
BufferedInputStream in=
new BufferedInputStream(
new FileInputStream(file)
);
BufferedOutputStream out=
new BufferedOutputStream(
new DataOutputStream(connection.getOutputStream())
);
int c;
while((c=in.read())!=-1)
out.write(c);
try{
connection.close();
}
catch(IOException e){
}
}
catch(IOException e){
System.err.println(e);
}
}
catch(IOException e){
System.err.println(e);
}
}
public static void main(String [] args){
ServerTest app=new ServerTest("D:\\Bad.mp3");
}
}
////////////////////////////////////////////////////////
import java.io.*;
import java.net.*;
class ClientTest{
public ClientTest(String fileName){
try{
Socket socket=new Socket("192.168.4.20",ServerTest.Port);
System.out.println("Connection to Server succeed");
File file=new File("E:\\"+fileName);
file.createNewFile();
BufferedInputStream in=
new BufferedInputStream(
new DataInputStream(socket.getInputStream())
);
BufferedOutputStream out=
new BufferedOutputStream(
new FileOutputStream(file)
);
int c;
while((c=in.read())!=-1)
out.write(c);
out.flush();
}
catch(UnknownHostException e){
System.err.println(e);
}
catch(IOException e){
System.err.println(e);
}
}
public static void main(String [] args){
ClientTest app=new ClientTest("Bad.mp3");
}
}