如何將客戶端的文件傳到伺服器-ag真人国际官网
如何使用ftp傳輸文件
首先需要保證對方伺服器配置了ftp服務供大家共享資源(無論是windows伺服器還是各種版本的linux系統伺服器),並且設置了相關的登錄賬號(匿名登錄名)以及文件和子目錄的讀寫許可權。然後,如果需要在其他機器上ftp文件,可以安裝一個ftp客戶端程序(一般是cutpftp、wsftp_pro等。)在這台機器上,然後在ftp客戶端軟體中輸入ftp伺服器的ip地址,然後輸入ftp伺服器需要你提供的用戶名和密碼,就可以傳輸文件了(當然,至於ftp伺服器是否允許用戶上傳文件,允許用戶上傳文件到哪個子目錄,這些都是ftp系統管理員設置的)。如何將文件傳輸到ftp伺服器上?
1、win7系統下可以從「計算機」上登陸ftp上傳文件,先打開「計算機」,在最上方輸入欄中輸入登陸ftp伺服器命令(ftp://ip地址),然後按回車。
2、彈出「登陸界面」後輸入登錄賬戶和密碼,點擊「登錄」。
3、賬號密碼核對成功,就會進入ftp伺服器上目錄列表,如果該賬號許可權足夠大就可以上傳文件到ftp伺服器中了。
ftp與電腦文件互傳方法?
各種方法.1.飛鴿.定位就是區域網內的共享文件,聊天的軟體.使用方法和qq一致.2,各種傳輸協議都可以.如http下載(一個上面開了http服務,另一開http下載).ftp上傳下載.ssh的sftp與scp傳輸都可以.秒殺斷點續傳,實現部分更新的rsync.比較原始的modem協議,也可以.(其他的也都可以歸結到這個裡面來,都是基於xx協議做的)不過既然你問這個,估計上面的你也不清楚.推薦個軟體吧,everything,支持建立http/ftp伺服器,這樣另一端就可以進行搜索 下載.3,遠程桌面/控制的方法這些東西一般都順帶了文件傳輸功能遠程登錄,你就可以訪問了.這是直接使用windows的遠程桌面連接工具就可以.4,win的文件共享最後才想起來這個,打開相應的文件共享.在另一台機器的網上鄰居中就可以打開,進而找到相應的文件,文件夾.摸索下吧,總有一個適合你.win最原生:文件共享簡單傻瓜:飛鴿文件比較瑣碎,不好定位:everything.功能強大,方便自定義:第2種好好研究.
怎麼把本地文件傳到遠程ftp?
很簡單.在本地電腦點開始.運行.輸入mstsc後按確定.然後在彈出的窗口中.輸入ip.此時記得點右下角的"選項"-本地資源.在下方有個"詳細信息".點擊以後.一般有智能卡和串列口兩個選項.其中串列口就是指的本地硬碟.勾選上以後再遠程連接伺服器.遠程成功以後在伺服器中打開"我的電腦".裡面會顯示你本地的電腦硬碟.把你想上傳的文件直接復制到伺服器即可.除此以外.你也可以在伺服器上安裝ftp.然後在本地通過ftp把文件上傳.或者是利用發郵件的方式把文件夾打包發送.並在伺服器上登錄郵件下載.海騰數據楊闖為你解答.希望我的對你有幫助.
ftp傳輸文件指令格式?
ftp://user:[email protected]是用戶名,password是密碼,domain.com是伺服器名或者是伺服器ip地址.
怎麼建一個ftp來傳輸數據?
只要ftp協議的話,大概的實現流程:
1。手機端向ftp伺服器中上傳一個txt文件,文件名代表的是此手機的訪問請求,txt文件中的內容代表請求的范圍;
2。伺服器有ftp監控程序,當發現有新的手機上傳文件,就訪問此文件,識別出文件名(哪個手機),確認文件內容(請求范圍),然後將此文件標記為舊文件,然後根據請求范圍生成數據json文本,根據文件名生成對應的txt數據文件;
3。手機端發現伺服器生成新的結果文件後,讀取此文件,然後解析json文本,得到數據結果即可完成傳輸。
說實話,給定ftp傳輸比較麻煩,難道是無法開通新的埠?
『貳』 java中如何實現從客戶端發送文件到伺服器端
伺服器端源碼:
import java.io.bufferedreader;
import java.io.file;
import java.io.filenotfoundexception;
import java.io.fileoutputstream;
import java.io.ioexception;
import java.io.inputstream;
import java.io.inputstreamreader;
import java.net.serversocket;
import java.net.socket;
/**
*
* 文件名:serverreceive.java
* 實現功能:作為伺服器接收客戶端發送的文件
*
* 具體實現過程:
* 1、建立socketserver,等待客戶端的連接
* 2、當有客戶端連接的時候,按照雙方的約定,這時要讀取一行數據
* 其中保存客戶端要發送的文件名和文件大小信息
* 3、根據文件名在本地創建文件,並建立好流通信
* 4、循環接收數據包,將數據包寫入文件
* 5、當接收數據的長度等於提前文件發過來的文件長度,即表示文件接收完畢,關閉文件
* 6、文件接收工作結束
public class serverreceive {
public static void main(string[] args) {
/**與伺服器建立連接的通信句柄*/
serversocket ss = null;
socket s = null;
/**定義用於在接收後在本地創建的文件對象和文件輸出流對象*/
file file = null;
fileoutputstream fos = null;
/**定義輸入流,使用socket的inputstream對數據包進行輸入*/
inputstream is = null;
/**定義byte數組來作為數據包的存儲數據包*/
byte[] buffer = new byte[4096 * 5];
/**用來接收文件發送請求的字元串*/
string comm = null;
/**建立socekt通信,等待伺服器進行連接*/
try {
ss = new serversocket(4004);
s = ss.accept();
} catch (ioexception e) {
e.printstacktrace();
}
/**讀取一行客戶端發送過來的約定信息*/
try {
inputstreamreader isr = new inputstreamreader(s.getinputstream());
bufferedreader br = new bufferedreader(isr);
comm = br.readline();
} catch (ioexception e) {
system.out.println("伺服器與客戶端斷開連接");
}
/**開始解析客戶端發送過來的請求命令*/
int index = comm.indexof("/#");
/**判斷協議是否為發送文件的協議*/
string xieyi = comm.substring(0, index);
if(!xieyi.equals("111")){
system.out.println("伺服器收到的協議碼不正確");
return;
}
/**解析出文件的名字和大小*/
comm = comm.substring(index 2);
index = comm.indexof("/#");
string filename = comm.substring(0, index).trim();
string filesize = comm.substring(index 2).trim();
/**創建空文件,用來進行接收文件*/
file = new file(filename);
if(!file.exists()){
try {
file.createnewfile();
} catch (ioexception e) {
system.out.println("伺服器端創建文件失敗");
}
}else{
/**在此也可以詢問是否覆蓋*/
system.out.println("本路徑已存在相同文件,進行覆蓋");
}
/**【以上就是客戶端代碼中寫到的伺服器的准備部分】*/
/**
* 伺服器接收文件的關鍵代碼*/
try {
/**將文件包裝到文件輸出流對象中*/
fos = new fileoutputstream(file);
long file_size = long.parselong(filesize);
is = s.getinputstream();
/**size為每次接收數據包的長度*/
int size = 0;
/**count用來記錄已接收到文件的長度*/
long count = 0;
/**使用while循環接收數據包*/
while(count < file_size){
/**從輸入流中讀取一個數據包*/
size = is.read(buffer);
/**將剛剛讀取的數據包寫到本地文件中去*/
fos.write(buffer, 0, size);
fos.flush();
/**將已接收到文件的長度 size*/
count = size;
system.out.println("伺服器端接收到數據包,大小為" size);
}
} catch (filenotfoundexception e) {
system.out.println("伺服器寫文件失敗");
} catch (ioexception e) {
system.out.println("伺服器:客戶端斷開連接");
}finally{
/**
* 將打開的文件關閉
* 如有需要,也可以在此關閉socket連接
* */
try {
if(fos != null)
fos.close();
} catch (ioexception e) {
e.printstacktrace();
}//catch (ioexception e)
}//finally
}//public static void main(string[] args)
}//public class serverreceive
客戶端源碼:
import java.io.file;
import java.io.fileinputstream;
import java.io.filenotfoundexception;
import java.io.ioexception;
import java.io.outputstream;
import java.io.printstream;
import java.net.socket;
/**
*
* 文件名:clientsend.java
* 實現功能:作為客戶端向伺服器發送一個文件
*
* 具體實現過程:
* 1、建立與伺服器端的連接,ip:127.0.0.1, port:4004
* 2、將文件的名字和大小通過自定義的文件傳輸協議,發送到伺服器
* 3、循環讀取本地文件,將文件打包發送到數據輸出流中
* 4、關閉文件,結束傳輸
*
* */
public class clientsend {
public static void main(string[] args) {
/**與伺服器建立連接的通信句柄*/
socket s = null;
/**定義文件對象,即為要發送的文件
* 如果使用絕對路徑,不要忘記使用'/'和'\'的區別
* 具體區別,請讀者自行查詢
* */
file sendfile = new file("api.chm");
/**定義文件輸入流,用來打開、讀取即將要發送的文件*/
fileinputstream fis = null;
/**定義byte數組來作為數據包的存儲數據包*/
byte[] buffer = new byte[4096 * 5];
/**定義輸出流,使用socket的outputstream對數據包進行輸出*/
outputstream os = null;
/**檢查要發送的文件是否存在*/
if(!sendfile.exists()){
system.out.println("客戶端:要發送的文件不存在");
return;
}
/**與伺服器建立連接*/
try {
s = new socket("127.0.0.1", 4004);
}catch (ioexception e) {
system.out.println("未連接到伺服器");
}
/**用文件對象初始化fis對象
* 以便於可以提取出文件的大小
* */
try {
fis = new fileinputstream(sendfile);
} catch (filenotfoundexception e1) {
e1.printstacktrace();
}
/**首先先向伺服器發送關於文件的信息,以便於伺服器進行接收的相關准備工作
* 具體的准備工作,請查看伺服器代碼。
*
* 發送的內容包括:發送文件協議碼(此處為111)/#文件名(帶後綴名)/#文件大小
* */
try {
printstream ps = new printstream(s.getoutputstream());
ps.println("111/#" sendfile.getname() "/#" fis.available());
ps.flush();
} catch (ioexception e) {
system.out.println("伺服器連接中斷");
}
/**
* 此處睡眠2s,等待伺服器把相關的工作準備好
* 也是為了保證網路的延遲
* 讀者可自行選擇添加此代碼
* */
try {
thread.sleep(2000);
} catch (interruptedexception e1) {
e1.printstacktrace();
}
/**之前的准備工作結束之後
* 下面就是文件傳輸的關鍵代碼
* */
try {
/**獲取socket的outputstream,以便向其中寫入數據包*/
os = s.getoutputstream();
/** size 用來記錄每次讀取文件的大小*/
int size = 0;
/**使用while循環讀取文件,直到文件讀取結束*/
while((size = fis.read(buffer)) != -1){
system.out.println("客戶端發送數據包,大小為" size);
/**向輸出流中寫入剛剛讀到的數據包*/
os.write(buffer, 0, size);
/**刷新一下*/
os.flush();
}
} catch (filenotfoundexception e) {
system.out.println("客戶端讀取文件出錯");
} catch (ioexception e) {
system.out.println("客戶端輸出文件出錯");
}finally{
/**
* 將打開的文件關閉
* 如有需要,也可以在此關閉socket連接
* */
try {
if(fis != null)
fis.close();
} catch (ioexception e) {
system.out.println("客戶端文件關閉出錯");
}//catch (ioexception e)
}//finally
}//public static void main(string[] args)
}//public class clientsend