下载此文档

Java基于Socket文件传输示例2007(An-Beer 工作室).doc


文档分类:IT计算机 | 页数:约15页 举报非法文档有奖
1/15
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/15 下载此文档
文档列表 文档介绍
来源:诗特林-sterning-BlogJava 最近需要进行网络传输大文件,于是对基于socket的文件传输作了一个初步的了解。在一位网友提供的程序基础上,俺进行了一些加工,采用了缓冲输入/输出流来包装输出流,再采用数据输入/输出输出流进行包装,加快传输的速度。废话少说,先来看服务器端的程序。;;;;;;.ServerSocket;.Socket;lassServerTest{intport=8821;voidstart(){Sockets=null;try{ServerSocketss=newServerSocket(port);while(true){//选择进行传输的文件StringfilePath="D:\\";Filefi=newFile(filePath);("文件长度:"+(int)());//ept()throws//IOException侦听并接受到此套接字的连接。此方法在进行连接之前一直阻塞。s=();("建立socket链接");DataInputStreamdis=newDataInputStream(newBufferedInputStream(()));();DataInputStreamfis=newDataInputStream(newBufferedInputStream(newFileInputStream(filePath)));DataOutputStreamps=newDataOutputStream(());//将文件名及长度传给客户端。这里要真正适用所有平台,例如中文名的处理,还需要加工,具体可以参见ThinkInJava4th里有现成的代码。(());();((long)());();intbufferSize=8192;byte[]buf=newbyte[bufferSize];while(true){intread=0;if(fis!=null){read=(buf);}if(read==-1){break;}(buf,0,read);}();//注意关闭socket链接哦,不然客户端会等待server的数据过来,//直到socket超时,导致数据不完整。();();("文件传输完成");}}catch(Exceptione){();}}publicstaticvoidmain(Stringarg[]){newServerTest().start();}};.*;.*;lassClientSocket{privateStringip;privateintport;privateSocketsocket=null;DataOutputStreamout=null;DataInputStreamgetMessageStream=null;lientSocket(Stringip,intport){=ip;=port;}/***//***创建socket连接*****@throwsException*exception*/publicvoidCreateConnection()throwsException{try{socket=newSocket(ip,port);}catch(Exceptione){();if(socket!=null)();throwe;}finally{}}publicvoidsendMessage(StringsendMessage)throwsException{try{out=newDataOutputStream(());if(sendMessage.

Java基于Socket文件传输示例2007(An-Beer 工作室) 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数15
  • 收藏数0 收藏
  • 顶次数0
  • 上传人xunlai783
  • 文件大小26 KB
  • 时间2018-09-15