使用socket编程实现简单的文件服务器.pdf

使用socket编程实现简单的文件服务器.pdf

ID:52241414

大小:171.47 KB

页数:9页

时间:2020-03-25

使用socket编程实现简单的文件服务器.pdf_第1页
使用socket编程实现简单的文件服务器.pdf_第2页
使用socket编程实现简单的文件服务器.pdf_第3页
使用socket编程实现简单的文件服务器.pdf_第4页
使用socket编程实现简单的文件服务器.pdf_第5页
资源描述:

《使用socket编程实现简单的文件服务器.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、真水无香:705642839使用socket编程实现简单的文件服务器题目介绍:使用socket编程实现一个简单的文件服务器。客户端程序实现put功能(将一个文件从本地传到文件服务器)和get功能(从文件服务器取一远程文件存为本地文件)。客户端和文件服务器不在同一台机器上。put[-hhostname][-pportname]local_filenameremote_filenameget[-hhostname][-pportname]remote_filenamelocal_filename程序简介:本程序使用Java实现,开发环境为MyEclipse8.01。调用示例如下

2、:put–h219.217.156.3–p4098d:\local.pptremote.pptget–h219.217.156.3–p4098remote.pptd:\local.ppt核心代码如下:/*--------------------------------------------FTPClient.java------------------------------------*/packagecn.edu.dlut.FTP;importjava.net.*;importjava.io.*;/***Socket实现文件服务器的客户端,*包含发送接收文件功能*

3、/publicclassFTPClient{privateSocketclient;privatebooleanconnected;publicFTPClient(Stringhost,intport){try{//新建socket对象client=newSocket(host,port);System.out.println("服务器连接成功!");this.connected=true;}catch(UnknownHostExceptione){this.connected=false;closeSocket();}catch(IOExceptione){真水无香:70

4、5642839System.out.println("服务器连接失败");this.connected=false;closeSocket();}}publicbooleanisConnected(){returnconnected;}publicvoidsetConnected(booleanconnected){this.connected=connected;}/***发送文件内容**@paramlocalFileName本地文件的全路径名*@paramremoteFileName远程文件的名称*/publicvoidsendFile(StringlocalFileN

5、ame,StringremoteFileName){DataOutputStreamout=null;//写Socket的输出流DataInputStreamreader=null;//读取本地文件的输入流try{if(client==null)return;Filefile=newFile(localFileName);//检查文件是否存在if(!file.exists()){System.out.println("本地文件不存在,请查看文件名是否写错!");this.connected=false;this.closeSocket();return;}//初始化本地文件

6、读取流reader=newDataInputStream(newBufferedInputStream(newFileInputStream(file)));//将指令和文件名发送到Socket的输出流中out=newDataOutputStream(client.getOutputStream());真水无香:705642839out.writeUTF("put"+remoteFileName);//将远程文件名发送出去out.flush();//开始发送文件intbufferSize=10240;//10kbyte[]buf=newbyte[bufferSize];in

7、tread=0;while((read=reader.read(buf))!=-1){out.write(buf,0,read);}out.flush();System.out.println("发送成功!");}catch(IOExceptionex){ex.printStackTrace();closeSocket();}finally{try{reader.close();out.close();}catch(IOExceptione){e.printStackTrace();}}}/***接收文件内容**@

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。