FTP文件傳輸協(xié)議課程設(shè)計報告_第1頁
FTP文件傳輸協(xié)議課程設(shè)計報告_第2頁
FTP文件傳輸協(xié)議課程設(shè)計報告_第3頁
FTP文件傳輸協(xié)議課程設(shè)計報告_第4頁
FTP文件傳輸協(xié)議課程設(shè)計報告_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、課程設(shè)計課程名稱計算機網(wǎng)絡(luò)題目名稱文件傳輸協(xié)議的簡單設(shè)計與實現(xiàn)學(xué)生學(xué)院自動化學(xué)院專業(yè)班級13級物聯(lián)網(wǎng)工程1班學(xué)號3113001554學(xué)生姓名梁建斌指導(dǎo)教師劉洪濤2015年12月25日摘要文件傳送是各種計算機網(wǎng)絡(luò)都實現(xiàn)的基本功能,文件傳送協(xié)議是一種最基本的應(yīng)用層協(xié)議按照客戶/服務(wù)器的模式進行工作,提供交互式的訪問。本設(shè)計是基于Eclipse平臺下使用Java實現(xiàn)的FTP文件傳輸。實現(xiàn)基本的文件傳輸操作。建立客戶端和服務(wù)器、客戶端基于TCPSocket進行數(shù)據(jù)傳輸,采用多線程進行數(shù)據(jù)傳輸,套接字來實現(xiàn)。在實現(xiàn)過程中采用類與對象的思想進行規(guī)劃,體驗了一個軟件開發(fā)過程的具體實現(xiàn)步驟。關(guān)鍵字:Java網(wǎng)

2、絡(luò)編程FTP文件傳輸文件上傳下載文件操作目錄、實驗?zāi)康?二、實驗內(nèi)容和要求31、實驗內(nèi)容32、具體要求3三、實驗主要儀器設(shè)備和材料3四、基本原理332.系統(tǒng)功能設(shè)計44基本功能44五、實現(xiàn)結(jié)構(gòu)流程圖5六、整體實現(xiàn)的邏輯、數(shù)據(jù)結(jié)構(gòu)55FTPClient用戶界面5FTPClient控制連接線程7FTPClient數(shù)據(jù)連接線程72.服務(wù)器的抽象數(shù)據(jù)類型82.1 FTPServer的控制連接線程8FTPServer的數(shù)據(jù)連接線程9七、具體的一些方法實現(xiàn)91. FTPClient用戶界面102. FTPClient控制連接103. FTPClient數(shù)據(jù)傳輸124. FTPServer控制連接145.

3、FTPServer數(shù)據(jù)傳輸14八、測試結(jié)果客戶端結(jié)果16服務(wù)端結(jié)果16九、課程設(shè)計心得17十、參考文獻18一、實驗?zāi)康奈募魉褪歉鞣N計算機網(wǎng)絡(luò)都實現(xiàn)的基本功能,文件傳送協(xié)議是一種最基本的應(yīng)用層協(xié)議按照客戶/服務(wù)器的模式進行工作,提供交互式的訪問,是INTERNET使用最廣泛的協(xié)議之一。本實驗的目的是,學(xué)會利用已有網(wǎng)絡(luò)環(huán)境設(shè)計并實現(xiàn)簡單應(yīng)用層協(xié)議,掌握TCP/IP網(wǎng)絡(luò)應(yīng)用程序基本的設(shè)計方法和實現(xiàn)技巧。二、實驗內(nèi)容和要求1、實驗內(nèi)容我們的計算機網(wǎng)絡(luò)實驗環(huán)境建立在TCP/IP網(wǎng)絡(luò)體系結(jié)構(gòu)之上。各計算機除了安裝TCP/IP軟件外,還安裝了TCP/IP開發(fā)系統(tǒng)。實驗室各計算機具備Windows環(huán)境中套接

4、字socket的編程接口功能,可為用戶提供全網(wǎng)范圍的進程通信功能。本實驗要求學(xué)生利用這些功能,設(shè)計和實現(xiàn)一個簡單的文件傳送協(xié)議。2、具體要求用socket編程接口編寫兩個程序,分別為客戶程序(client.c)和服務(wù)器程序(server.。,該程序應(yīng)能實現(xiàn)下述命令功能:get::取遠方的一個文件put:傳給遠方一個文件pwd:顯示遠主當(dāng)前目錄dir:列出遠方當(dāng)前目錄cd:改變遠方當(dāng)前目錄?:顯示你提供的命令quit:退出返回這此命令的具體工作方式(指給出結(jié)果的形式)可以參照FTP的相應(yīng)命令,有余力的同學(xué)可以多實現(xiàn)幾個命令。最后,寫出實驗報告。三、實驗主要儀器設(shè)備和材料聯(lián)網(wǎng)計算機四、基本原理FT

5、P是Internet上傳文件的應(yīng)用層協(xié)議。FTP規(guī)定數(shù)據(jù)包的格式、數(shù)據(jù)包頭部結(jié)構(gòu)和命令結(jié)構(gòu)等等。FTP應(yīng)用TCP傳輸而不用UDP。由FTP提供的文件傳輸將一個完整的文件從一個系統(tǒng)復(fù)雜然后通過TCP套接字發(fā)送傳輸個另一個系統(tǒng)中。一方為服務(wù)器。一方為客戶端。FTP建立兩個TCP連接,一個用于數(shù)據(jù)傳輸,一個用于傳輸命令。每一個FTP主機都有一個“協(xié)議解析器”模塊。FTP以純文本形式發(fā)送,其響應(yīng)同樣也是純文本形式。在進行文件傳輸時,F(xiàn)TP的客戶端和服務(wù)器之間要建立兩個并行的TCP連接:“控制連接”和“數(shù)據(jù)連接”??刂七B接在整個連接回話的期間一直保持打開狀態(tài)。當(dāng)FTP客戶端通過控制連接發(fā)送請求,并告訴服

6、務(wù)器自己的數(shù)據(jù)連接的動態(tài)端口號(randomPort),服務(wù)器通過控制連接(2554)接收到請求信息,然后,創(chuàng)建數(shù)據(jù)連接(randomPort)進程進行連接客戶端的數(shù)據(jù)傳輸端口。由于FTP采用兩個不同的端口,所以數(shù)據(jù)連接和控制連接不會混亂。原理圖看圖12.系統(tǒng)功能設(shè)計基本功能:ClientServer界面設(shè)計;輸入要連的遠程主機服務(wù)器IP,上傳任意格式的文件;下載任意格式文件(能實現(xiàn)斷點續(xù)傳);查看服務(wù)器的根目錄;列出服務(wù)器當(dāng)前文件夾目錄,更改服務(wù)器當(dāng)前文件夾目錄再列出,支持多客戶同時數(shù)據(jù)訪問服務(wù)器(通過控制層給傳輸層分配動態(tài)端實現(xiàn))。系統(tǒng)功能實現(xiàn):FTPServer啟動控制連接線程Serve

7、rControlPro創(chuàng)建一個ServerSocket端口號為2554進行實況監(jiān)聽訪問。FTPClient開啟,啟動用戶界面菜單,輸入IP后,彈出選擇提示菜單,用戶輸入想實現(xiàn)的操作operating(get,put,dir,pwd,-cd)和相應(yīng)其它信息(文件路徑),然后FTPClient開啟控制連接的線程ClientControlPro訪問FTPServer的2554端口進行控制連接,并啟動了數(shù)據(jù)連接線程ClientTransPrd服務(wù)器接收到FTPClient的請求和相關(guān)信息,進行啟動數(shù)據(jù)連接ServerTransPro,監(jiān)聽客戶端的數(shù)據(jù)連接。完成相應(yīng)請求后。服務(wù)器關(guān)閉套接字,關(guān)閉數(shù)據(jù)連接

8、線程。進入監(jiān)聽狀態(tài)。五、實現(xiàn)結(jié)構(gòu)流程圖六、整體實現(xiàn)的邏輯、數(shù)據(jù)結(jié)構(gòu)ADTClient(數(shù)據(jù)對象:控制線程數(shù)據(jù)傳輸線程數(shù)據(jù)關(guān)系:控制線程控制數(shù)據(jù)傳輸線程三個類:ClassUserinterface;用戶界面ClassClientControlPro;控制進程ClassClientDataTransPro;/數(shù)據(jù)傳輸進程)FTPClient用戶界面ADTClient-Userinterface()publicstaticvoidmain(Stringargs)(System.out.println("請輸入服務(wù)器ip地址");serverIP=input.next();opti

9、onmenu();)staticvoidoptionmenu()(System.out.println("歡迎來到FTP文件管理客戶端");System.out.println("");)");System.out.println("請輸入具體操作(hgetputdirpwd-cdquitStringoperating=input.next();try(switch(operating)(case"h":System.out.println("使用說明書!n");showUsingBook();

10、break;case"get":/獲取要下載的文件名StringgetFileNmae=getFileName();Stringa=getFileNmae.split(".",2);houzui=a1;System.out.println("下載中");newClientControlPro(operating,getFileNmae,serverIP,houzui).start();/控制連接break;case"put":StringputFileNmae=putFileName();System.out.pr

11、intln("發(fā)送中");newClientControlPro(operating,putFileNmae,serverIP,houzui).start();break;case"dir":System.out.println("開始操作列出遠方當(dāng)前目錄功能!");newClientControlPro(operating,"",serverIP,houzui).start();break;case"pwd":System.out.println("開始操作顯示遠主當(dāng)前路徑功能!&q

12、uot;);newClientControlPro(operating,"",serverIP,houzui).start();break;case"-cd":System.out.println("開始操作改變遠方當(dāng)前目錄文件功能!");/獲取要更改文件的新路徑StringcdFileDirName=getChangeDir();newClientControlPro(operating,cdFileDirName,serverIP,houzui).start();break;case"quit":System.

13、out.println("正在退出程序!");System.exit(0);break;default:break;optionmenu();catch(Exceptione1)e1.printStackTrace();System.out.println("客戶端啟動失敗!");)FTPClient控制連接線程publicclassClientControlProextendsThread(StringuserCode=""/傳輸給服務(wù)器的一竄控制信息Stringoperating;StringgetFilename;Strings

14、erverIP;Stringhouzui;longposition;intrandomPort;publicClientControlPro(Stringoperating,StringgetFilename,StringserverIP,Stringhouzui)publicvoidrun()randomPort=newRandom().nextInt(65535);/生成隨機端口userCode=operating+":"+randomPort+":"+":"+position+":"+getFilename;

15、/利用":"通過正則表達式拆分3個字符竄sendMessage();/發(fā)送控制信息并啟動傳輸端線程sendMessage()FTPClient數(shù)據(jù)連接線程ClientTransProextendedThreadpublicClientTransPro(Stringoperating,StringgetFilename,StringserverIP,Stringhouzui,intrandomPort,longposition).publicvoidrun()switch(operating)case"get":download();break;case&

16、quot;put":upload(getFilename);break;case"pwd":show();break;case"dir":dir();break;case"-cd":dir();break;default:break;)2.服務(wù)器的抽象數(shù)據(jù)類型ADTServer數(shù)據(jù)對象:控制線程Socket(2554)數(shù)據(jù)傳線程Socket(randomPort)數(shù)據(jù)關(guān)系:控制線程控制數(shù)據(jù)傳輸線程三個類:ServerInterface服務(wù)器入口ServerControlPro/控制進程ServerDataTransPro/數(shù)

17、據(jù)傳輸進程)2.1 FTPServer的控制連接publicclassServerControlProextendsThreadpublicvoidrun()ServerSocketserverSocket;serverSocket=newServerSocket(2554);/學(xué)號后三位加+2000while(true)System.out.println("監(jiān)聽到客戶端請求第"+i+"個!n");/控制線程Sockets=serverSocket.accept();/創(chuàng)建一個監(jiān)聽客戶請求的套接字i+;getClientMessage(s);/接收客戶

18、端傳來的控制信息并啟動傳輸端線程)getClientMessage(s).;)FTPServer的數(shù)據(jù)連接publicclassServerDataTransProextendsThreadStringoperatingStringgetFilenameStringrandomPortSocketsocket;=,;;,;;,;;intserverRandomPort;StringgetFilename)publicServerDataTransPro(Stringoperating,StringrandomPort,(this.operating=operating;this.getFile

19、name=getFilename;this.randomPort=randomPort;nullpublicvoidrun()ServerSocketserverSocket=try(serverRandomPort=newInteger(randomPort);serverSocket=newServerSocket(serverRandomPort);booleanisflag=true;while(isflag)(socket=serverSocket.accept();輸端"連接本服務(wù)數(shù)據(jù)傳System.out.println("有客戶端"+socket.

20、toString()+);if(socket!=null)(switch(operating)(case"get":System.out.println(download();isflag=false;break;case"put":System.out.println(put(socket);isflag=false;break;case"pwd":System.out.println(pwd();isflag=false;break;case"dir":System.out.println(dir();isfl

21、ag=false;"控制端的操作是get")"控制端的操作是put")"控制端的操作是pwd")"控制端的操作是dir")break;case"-cd":System.out.println("控制端的操作是-cd");cd();isflag=false;break;default:break;isflag=false;serverSocket.close();catch(IOExceptione)e.printStackTrace();七、具體的一些方法實現(xiàn)1.FTPCli

22、ent控制連接的sendMessage()方法,訪問服務(wù)器的2554端口,發(fā)送控制指令和指令信息給服務(wù)器的控制連接線程,并啟動了自己的傳輸線程。privatevoidsendMessage()/發(fā)送信息給服務(wù)器控制端ClientTransProctp=newClientTransPro(operating,getFilename,serverIP,houzui,randomPort,position);Socketsocket;trysocket=newSocket(serverIP,2554);OutputStreamosToSer=socket.getOutputStream();Inpu

23、tStreamisFromSer=socket.getInputStream();osToSer.write(userCode.getBytes();osToSer.close();isFromSer.close();socket.close();ctp.start();catch(UnknownHostExceptione)10e.printStackTrace();catch(lOExceptione)(e.printStackTrace();2.FTPClient數(shù)據(jù)傳輸各操作方法實現(xiàn)privatevoiddir()/列出文件夾目錄(try(randomPortSocketsocket=

24、newSocket(serverIP,randomPort);/動態(tài)端口lnputStreaminputStream=socket.getlnputStream();/緩存接收數(shù)據(jù),然后進行顯示服務(wù)器的路徑:byterecvbuf=newbyte1024;intlen;while(len=inputStream.read(recvbuf)!=-1)(len=inputStream.read(recvbuf);Stringstr=newString(recvbuf);Stringdir=str.split(",");for(inti=0;i<dir.length;i+)

25、(System.out.println(diri);inputStream.close();socket.close();catch(IOExceptione)(e.printStackTrace();publicvoiddownload()(/下載文件操作/先進套接字訪問服務(wù)器數(shù)據(jù)傳輸線程:Socketsocket;try(11socket=newSocket(serverIP,randomPort);/建立輸入輸出流進行數(shù)據(jù)通信:Inputstreaminputstream=socket.getInputStream();RandomAccessFilefile_out=newRandom

26、AccessFile("downloadfile."+houzui,"rw");/創(chuàng)建從中讀取和向其中寫入(可選)的隨機訪問文件流intpos=(int)position;file_out.seek(pos);/即定位到要開始下載的字節(jié)位置bytebytes=newbyte10240;while(c=inputStream.read(bytes)!=-1)file_out.write(bytes,0,c);/關(guān)閉流和套接字file_out.close();inputStream.close();catch(UnknownHostExceptione1)e

27、1.printStackTrace();catch(IOExceptione1)e1.printStackTrace();publicvoidupload(Stringfilename)try/*上傳文件操作先進套接字訪問服務(wù)器數(shù)據(jù)傳輸線程和輸入輸出流的實現(xiàn):*/Socketsocket=newSocket(serverIP,randomPort);InputStreaminputStream=socket.getInputStream();/根據(jù)用戶選擇的文件路徑進行讀取本地文件到緩存中然后發(fā)送給服務(wù)器的數(shù)據(jù)傳輸線程。具體如下:Filefile_in=newFile(filename);Fi

28、leInputStreamfis=newFileInputStream(file_in);bytebytes=newbyte1024;while(c=fis.read(bytes)!=-1)outputStream.write(bytes,0,c);fis.close();inputStream.close();12socket.close();catch(lOExceptione)(e.printStackTrace();/顯示服務(wù)器的路徑publicvoidshow()(try(Socketsocket=newSocket(serverlP,randomPort);lnputStreami

29、nputStream=socket.getlnputStream();/緩存接收數(shù)據(jù),然后進行顯示服務(wù)器的路徑:byterecvbuf=newbyte1024;intlen;while(len=inputStream.read(recvbuf)!=-1)(len=inputStream.read(recvbuf);System.out.println(newString(recvbuf);inputStream.close();socket.close();catch(lOExceptione)(e.printStackTrace();類各方法的實現(xiàn)privatevoidgetClientMe

30、ssage(Sockets)/接收客戶端控制線程發(fā)來的控制信息(lnputStreamis=s.getlnputStream();byteb=newbyte1024;intc;StringBuffersb=null;Stringstr=null;while(c=is.read(b)!=-1)(str=newString(b);sb=newStringBuffer(str);String口a=sb.toString().split(":",4);/根據(jù)給定正則表達式的匹配拆分成四個字符串13Stringoperating=a0;StringrandomPort=a1;Stri

31、ngposition=a2;Stringfile=a3.trim();s.close();newServerDataTransPro(operating,randomPort,file,position).start();/傳參給傳輸端,啟動傳輸端線程。4.FTPServer數(shù)據(jù)傳輸類各方法的實現(xiàn)privatevoidcd()/發(fā)送指定路徑的目錄tryStringsendDir=""StringBuffersb=newStringBuffer();Stringstr;Filefs=newFile(getFilename).listFiles();if(fs=null)|(f

32、s.length<=0)sendDir="空文件夾";elsefor(inti=0;i<fs.length;i+)if(fsi.isDirectory()str="目錄:"+fsi.getName()+sb=newStringBuffer(sb+str);sendDir=sb.toString();OutputStreamos=socket.getOutputStream();bytebytes=newbyte1024;bytes=sendDir.getBytes();os.write(bytes);os.close();socket.clo

33、se();catch(FileNotFoundExceptione)e.printStackTrace();catch(IOExceptione)14e.printStackTrace();privatevoiddir()/發(fā)送服務(wù)器當(dāng)前文件夾目錄名稱(try(StringsendDir=""StringBuffersb=newStringBuffer();Stringstr=""Stringstring=System.getProperty("user.dir");/得到當(dāng)前文件夾路徑System.out.println(strin

34、g);File口fs=newFile(string).listFiles();if(fs=null)|(fs.length<=0)(sendDir="空文件夾";else(for(inti=0;i<fs.length;i+)if(fsi.isDirectory()(str="目錄:"+fsi.getName()+","sb=newStringBuffer(sb+str);sendDir=sb.toString();/"目錄:.settings,目錄:bin,目錄:src,"OutputStreamos=

35、socket.getOutputStream();bytebytes=newbyte1024;bytes=sendDir.getBytes();os.write(bytes);os.close();socket.close();catch(FileNotFoundExceptione)(e.printStackTrace();catch(IOExceptione)(e.printStackTrace();15privatevoidpwd()/發(fā)送當(dāng)前文件夾絕對路徑(StringworkingDir=System.getProperty("user.dir");Outputs

36、treamos;try(System.out.println(getFilename);os=socket.getOutputStream();bytebytes=newbyte1024;bytes=workingDir.getBytes();os.write(bytes);os.close();socket.close();catch(FileNotFoundExceptione)(e.printStackTrace();catch(IOExceptione)(e.printStackTrace();privatevoidput(Socketsocket)/接收客戶端發(fā)來的文件(try(In

37、putStreaminputStream=socket.getInputStream();Stringstr=getFilename.split(".",2);/得到發(fā)來的文件的后綴,能收到任意格式的文件Stringhouzui=str1;Filefile_out=newFile("receivefile."+houzui);FileOutputStreamos=newFileOutputStream(file_out);bytebytes=newbyte1024;intc;while(c=inputStream.read(bytes)!=-1)(os.

38、write(bytes,0,c);/關(guān)閉流和套接字os.close();inputStream.close();socket.close();16catch(Exceptione)(e.printStackTrace();privatevoiddownload()/發(fā)送客戶端要下載的文件(/建立輸入輸出流進行數(shù)據(jù)通信:Filefile_in=newFile(getFilename);OutputStreamos;intc;try(Stringstr=file_in.toString();System.out.println("file_in"+str);RandomAcce

39、ssFilerandomAccessFile=newRandomAccessFile(file_in,"rw");os=socket.getOutputStream();/讀客戶端發(fā)來的文件斷點位置intpos=Integer.parseInt(position);/把客戶端傳來的的position變整型randomAccessFile.seek(pos);/即定位到要開始下載的字節(jié)位置bytebytes=newbyte10024;while(c=randomAccessFile.read(bytes)!=-1)(os.write(bytes,0,c);.八、測試結(jié)果客戶端

40、結(jié)果:17Us&rlnterfaceJawaApphcaticnC:PrograimFiIe-sl3vaXjdkl7075binjavaw.exe(2015-12-25請輸入服杳器工口地址01款迎柒至用TP文件管理百戶端清輸入旦體播作chgetputdi.rpwd-cdquit)dir升帕操作到出西方筠前目錄功能!歡迎來到FTP文印管理容白端i者輸入具悻操作<hgetputdirpwd-cdquit)目錄:.5e七七;n月3目錄:bin目錄r針upwd并始揍作顯示也主與前路徑功能!歐迎親到匚TP文件管理客戶端i音輸力且體操作Chgetpvtdirpwd-cd

41、quit)CtUs.prsAdministratorworkspiicFTPSprver-cd開始操作雙芟運方當(dāng)前目錄文件功能!清施久里曲登的的9件路徑:F;*|r”I請輸入要改兗的的文件路徑:一歡來到FTP文件苣理客戶端i吉輸入具悻掾IFWhgetputdirpwdquitj目錄:5360Stc±1on目錄逐RECYCLE.BIM日就C女日錄;360Downloads目錄二4己小也目錄:GGHQ目錄步白停目錄:GouWoGame'S目錄:KanKn目錄:Ku<jOU、前1:KiifiauTarha目錄:KwDonlodd日錄士M三Qc:"9H目錄:MSOCa

42、che目錄:NBA2K14.DrcamTools.tool.vl_3目錄:ppsfile目錄;PldeleFiles目錄!iqyiIjI即I18get清輸入要下載的文件路徑:f-Aavi.rmvb下載中歡迎來到FTP文件管理客戶端清施A具體操作(hgetputdirpwd-cdquit)dir開始操作列出遠方當(dāng)前目錄功能(歡迎來到FTP文件管睥客戶端請輸X具體操作(hgetputdirpwd-cdquit)目錄;.settings目錄:bin目錄:bULfFT注意此時get(下載)還沒結(jié)束,后馬上dir也能訪問說明動態(tài)端口實現(xiàn)了同時訪問功能。服務(wù)器結(jié)果:ervenntEiEce.JavaApp

43、iiration|wr5grarr,rIesJava'jdkl.V_j5;t)in'javaw.eie卜/n!",:上牌第器已后研監(jiān)陪電三楠東篥部!喇國客戶蜀前涌好!Socketaddr=/192.16B.1.101Jport=62251JlocaLportT11335$:MiS控觸解蚓N是dirC:UsersAdmmstpatorworkspaceFTPSenver擷談喀內(nèi)荷第梯2個!«MlfcSD<ket3ddr=/192.16S.l.101,port=62262,locaLport=37499jSJ:ig肺搟蠅F是pwd品噫匿H滯請術(shù)第升

44、7;msocket3ddr=/192.lbE.1.101,上296,1。仁君port二5上157隹層江W再顫將看航端附金粕痛乍是rd盥談喀用荷爸辟*H他同行txketaddp=/192.108.1,181,popt=E2568/OS1口cpt=4邸2遑擅樹踢附昨輸藍控艇軸潴作是號江fi1e_in干:'電臬-rnwh猿噫厝井前翻第5個119控制端的操作是g3tf£lc_inf:avi.rmvb監(jiān)聽到看戶端請求第5個!有客戶端55。七£”=/192.168.1,101川。廣七=6257%工口alp。七=3霞72連接本版轉(zhuǎn)數(shù)據(jù)傳輸端¥諦麟的鞋作是diC:User

45、sAdminis'tratorwarkspaceFTPServerd注意此時新啟動一個客戶端連接put文件而上一個get下載操作還沒完成說明動態(tài)端口實現(xiàn)了同時訪問請制A版號器LP地卅192,168.1.101歡迎*手肝丁町性笆理客戶潮i青餐j入同f本操作thputdirpwd-cdquit3put:請輛人要發(fā)送的史件解包J卜*電星汽上rmvb發(fā)送中-歡i卬未至"FTP文件曾洱客戶端濟瑜具體據(jù)作Chputdirpwd-cdquit)addr/lO2.IGB.1.101,port&2'SEBT1ecfl1pcrt_4I3H2iZE>5TJIHS5fkiH主制事需

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論