當前位置:首頁 » 文件管理 » ftp二進制ascii

ftp二進制ascii

發布時間: 2023-08-29 11:01:52

ftp的傳輸有兩種方式

FTP的傳輸有兩種方式:ASCII傳輸模式和二進制數據傳輸模式。
1.ASCII傳輸方式:假定用戶正在拷貝的文件包含的簡單ASCII碼文本,如果在遠程機器上運行的不是UNIX,當文件傳輸時ftp通常會自動地調整文件的內容以便於把文件解釋成另外那台計算機存儲文本文件的格式。
但是常常有這樣的情況,用戶正在傳輸的文件包含的不是文本文件,它們可能是程序,資料庫,字處理文件或者壓縮文件(盡管字處理文件包含的大部分是文本,其中也包含有指示頁尺寸,字型檔等信息的非列印字元)。在拷貝任何非文本文件之前,用binary 命令告訴ftp逐字拷貝,不要對這些文件進行處理,這也是下面要講的二進制傳輸。
2.二進制傳輸模式:在二進制傳輸中,保存文件的位序,以便原始和拷貝的是逐位一一對應的。即使目的地機器上包含位序列的文件是沒意義的。例如,macintosh以二進制方式傳送可執行文件到Windows系統,在對方系統上,此文件不能執行。
如果你在ASCII方式下傳輸二進制文件,即使不需要也仍會轉譯。這會使傳輸稍微變慢 ,也會損壞數據,使文件變得不能用。(在大多數計算機上,ASCII方式一般假設每一字元的第一有效位無意義,因為ASCII字元組合不使用它。如果你傳輸二進制文件,所有的位都是重要的。)如果你知道這兩台機器是同樣的,則二進制方式對文本文件和數據文件都是有效的。
5. FTP的工作方式
FTP支持兩種模式,一種方式叫做Standard (也就是 PORT方式,主動方式),一種是 Passive (也就是PASV,被動方式)。 Standard模式 FTP的客戶端發送 PORT 命令到FTP伺服器。Passive模式FTP的客戶端發送 PASV命令到 FTP Server。
下面介紹一個這兩種方式的工作原理:
Port模式FTP 客戶端首先和FTP伺服器的TCP 21埠建立連接,通過這個通道發送命令,客戶端需要接收數據的時候在這個通道上發送PORT命令。 PORT命令包含了客戶端用什麼埠接收數據。在傳送數據的時候,伺服器端通過自己的TCP 20埠連接至客戶端的指定埠發送數據。 FTP server必須和客戶端建立一個新的連接用來傳送數據。
Passive模式在建立控制通道的時候和Standard模式類似,但建立連接後發送的不是Port命令,而是Pasv命令。FTP伺服器收到Pasv命令後,隨機打開一個高端埠(埠號大於1024)並且通知客戶端在這個埠上傳送數據的請求,客戶端連接FTP伺服器此埠,然後FTP伺服器將通過這個埠進行數據的傳送,這個時候FTP server不再需要建立一個新的和客戶端之間的連接。
很多防火牆在設置的時候都是不允許接受外部發起的連接的,所以許多位於防火牆後或內網的FTP伺服器不支持PASV模式,因為客戶端無法穿過防火牆打開FTP伺服器的高端埠;而許多內網的客戶端不能用PORT模式登陸FTP伺服器,因為從伺服器的TCP 20無法和內部網路的客戶端建立一個新的連接,造成無法工作。

② ftp是指的什麼

ftp是指的文件傳輸協議,是用於在網路上進行文件傳輸的一套標准協議,它工作在 OSI模型的第七層,TCP模型的第四層,即應用層,使用TCP傳輸而不是UDP,客戶在和伺服器建立連接前要經過一個「三次握手」的過程,保證客戶與伺服器之間的連接是可靠的,而且是面向連接,為數據傳輸提供可靠保證。

FTP允許用戶以文件操作的方式(如文件的增、刪、改、查、傳送等)與另一主機相互通信。然而, 用戶並不真正登錄到自己想要存取的計算機上面而成為完全用戶, 可用FTP程序訪問遠程資源, 實現用戶往返傳輸文件、目錄管理以及訪問電子郵件等等, 即使雙方計算機可能配有不同的操作系統和文件存儲方式。

(2)ftp二進制ascii擴展閱讀:

FTP的傳輸有兩種方式:ASCII、二進制。

1、ASCII傳輸方式

假定用戶正在拷貝的文件包含的簡單ASCII碼文本,如果在遠程機器上運行的不是UNIX,當文件傳輸時ftp通常會自動地調整文件的內容以便於把文件解釋成另外那台計算機存儲文本文件的格式。

但是常常有這樣的情況,用戶正在傳輸的文件包含的不是文本文件,它們可能是程序,資料庫,字處理文件或者壓縮文件。在拷貝任何非文本文件之前,用binary 命令告訴ftp逐字拷貝。

2、二進制傳輸模式

在二進制傳輸中,保存文件的位序,以便原始和拷貝的是逐位一一對應的。即使目的地機器上包含位序列的文件是沒意義的。例如,macintosh以二進制方式傳送可執行文件到Windows系統,在對方系統上,此文件不能執行。

如在ASCII方式下傳輸二進制文件,即使不需要也仍會轉譯。這會損壞數據。(ASCII方式一般假設每一字元的第一有效位無意義,因為ASCII字元組合不使用它。如果傳輸二進制文件,所有的位都是重要的。)

③ FTP分為ASCII碼和什麼模式

ftp模式中ASCII傳送與Binary模式
ftp模式中ASCII傳送與Binary傳送有什麼不同

ftp模式中ASCII傳送與Binary傳送有什麼不同

1)ftp中如果選中ASCII形式傳送可執行文件或者壓縮文件(本來應該選擇Binary形式的),會有什麼後

果?
2)
好像ASCII傳送需要發方將本地文本文件轉換成NVT ASCII碼形式,而收方則將NVT ASCII碼再還原

成本地文本文件。而NVT ASCII只有7位,那麼傳送二進制文件時大於#128的byte不是無法傳輸嗎?
但是我平時下載文件(包括可執行文件)都是默認的ASCII形式get下來的,都使用很正常呀,
後來專門用兩種方式下載同一個exe,用fc比較兩個文件,沒有發現任何區別。
3)不過上述下載時c/s都是windows系統,不知道其他OS是否兩種形式有所不同。
那位朋友跟我講講兩者的區別。

FTP 可用多種格式傳輸文件,通常由系統決定,大多數系統(包括UNIX系統)只有兩種模式:文本模式和二進制模式。文本傳輸 器使用ASCII字元,並由回車鍵和換行符分開,而二進制不用轉換或格式化就可傳字元,二進制模式比文本模式更快,並且可以傳輸所有ASCII值,所以系統管理員一般將FTP設置成二進制模式。

一般來說:
如果你用錯誤的模式傳輸你的圖片,你將會無法看到圖片,看到的會是亂碼。
如果你用錯誤模式上傳CGI腳本,那麼就將無法運行你的腳本,會看到類似Server 500 Error的出錯信息。
所以你必須使用正確的模式,圖片和執行文件必須用BINARY模式,CGI腳本和普通HTML文件用ASCII模式上傳.

ASCII和BINARY模式區別:
用HTML 和文本編寫的文件必須用ASCII模式上傳,用BINARY模式上傳會破壞文件,導致文件執行出錯。

BINARY模式用來傳送可執行文件,壓縮文件,和圖片文件。
如果你用ASCII模式傳,會顯示一堆亂碼,你必須重新用BINARY模式傳。

對於第二種情況,是因為有很多ftp伺服器和客戶端軟體能自動識別文件類型,並採取相應的傳輸方式。

ftp是應用層協議,和具體操作系統無關 .

ASCII模式和BINARY模式的區別是回車換行的處理,binary模式不對數據進行任何處理,asci模式將回車換行轉換為本機的回車字元,比如Unix下是\n,Windows下是\r\n,Mac下是\r

ascii模式下會轉換文件
不能說是不同系統對回車換行解釋不同
而是不同的系統有不同的行結束符
unix系統下行結束符是一個位元組,即十六進制的0A
而ms的系統是兩個位元組,即十六進制的0D0A
所以當你用ascii方式從unix的ftp server下載文件時(不管是二進制或者文本文件),每檢測到一個

位元組是0A,就會自動插入一個0D,所以如果你的文件是二進制文件比如可執行文件、壓縮包什麼的,就肯

定不能用了。如果你的文件就是unix下的文本文件,你用ascii模式是正確的,要是誤用了binary模式,

你在windows上看這個文件是沒有換行的,裡面是一個個的黑方塊。
一般來說,我們最好都用binary方式,這樣可以保證不出錯。如果有文本格式轉換的問題,即unix格式

的文本和dos格式的文本之間的轉換,有很多工具可以做的,不要在ftp傳輸的時候冒險,尤其是你如果對

這些東西不是非常清楚的話。

可以使用MIME,把所有的字元,轉換成0~128之間的字元,然後傳送,在接受方再將接收到的字元MIME反向轉換。通常我們發送郵件,就是使用這樣的字元轉換方式。

④ FTP採用的是什麼工作模式,可以實現的文件傳輸方式有哪兩種

FTP可以採用2種工作模式,分別是Port模式、Passive模式;

FTP的傳輸有兩種方式:ASCII、二進制:

1、ASCII傳輸方式:

假定用戶正在拷貝的文件包含的簡單ASCII碼文本,如果在遠程機器上運行的不是UNIX,當文件傳輸時ftp通常會自動地調整文件的內容以便於把文件解釋成另外那台計算機存儲文本文件的格式

2、二進制傳輸模式:

在二進制傳輸中,保存文件的位序,以便原始和拷貝的是逐位一一對應的。即使目的地機器上包含位序列的文件是沒意義的。例如,macintosh以二進制方式傳送可執行文件到Windows系統,在對方系統上,此文件不能執行。

(4)ftp二進制ascii擴展閱讀

FTP文件傳輸協議的特點介紹:

FTP工作在TCP/IP模型的應用層,基於的傳輸協議是TCP,FTP客戶端和伺服器之間的連接是可靠的,面向連接的,為數據的傳輸提供了可靠的保證。

FTP的主要特徵:

1、控制連接是建立在客戶協議解釋器和伺服器協議解釋器之間用於交換命令與應答的通信鏈路

2、數據連接是傳輸數據的全雙工連接。傳輸數據可以發生在伺服器數據傳輸過程DTP和客戶DTP之間,也可以發生在兩個伺服器的DTP之間。

⑤ FTP協議中的 Binary和ASCII模式如何實現

你這個代碼根本跟ftp伺服器沒關系吧,就是個傳文件,ftp要有協議的。

用reader和writer是字元流,只能對文本文件,不能對二進制文件,所以得用Stream
FileInputStream fr = new FileInputStream (f);//f是File類型
byte[] buff = new byte[1024];
OutputStream w = s.getOutputStream();
int c;
while((c = r.read(buff))!=-1) {
out.write(buff,0,c);
}
或者用BufferedInputStream和BufferedOutputStream也可以

⑥ 急!!高分! 簡述使用ftp 進行文件傳輸時的兩種登入方式他們的區別是什麼常用的ftp文件傳輸命令是什

樓主您好。ftp的傳輸方式分為兩種:ASCII傳輸方式和二進制(BINARY)傳輸模式。二者之間的區別:ASCII模式和BINARY模式的區別是回車換行的處理,binary模式不對數據進行任何處理,asci模式將回車換行轉換為本機的回車字元,比如Unix下是\n,Windows下是\r\n,Mac下是\r。至於ftp文件傳輸的命令,一般的都是ftp+ip(需要上傳的伺服器),然後使用put命令進行上傳。

⑦ ftp的特點是什麼

【特點】FTP協議具有4個基本特點:

1、提供互動式的訪問,使得用戶更容易通過 操作命令與遠程系統交互。

2、允許客戶指定存儲文件的類型與格式。

3、具備鑒別控制能力,允許文件具有存取權 限。

4、屏蔽了計算機系統的細節,因而適合於在 異構網路中任意計算機之間傳送文件。

二、FTP的運行機制主要包括:FTP伺服器、匿名FTP。

1、FTP伺服器

FTP也是一個客戶機/伺服器系統。簡單地說,支持FTP協議的伺服器就是FTP伺服器。

用戶通過一個支持FTP協議的客戶機程序,連接到在遠程主機上的FTP伺服器程序。用戶通過客戶機程序向伺服器程序發出命令,伺服器程序執行用戶所發出的命令,並將執行的結果返回到客戶機。

2、匿名FTP

在匿名FTP機制下,用戶可通過它連接到遠程主機上,並從其下載文件,而無需成為其注冊用戶。系統管理員建立了一個特殊的用戶ID,名為anonymous,Internet上的任何人在任何地方都可使用該用戶ID。

通過FTP程序連接匿名FTP主機的方式同連接普通FTP主機的方式差不多,只是在要求提供用戶標識ID時必須輸入anonymous,該用戶ID的口令可以是任意的字元串。

網路—ftp

網路—FTP協議

熱點內容
androidmime 發布:2025-01-31 22:34:44 瀏覽:782
ftp和http的中文含義是 發布:2025-01-31 22:33:48 瀏覽:402
sqlite3存儲圖片 發布:2025-01-31 22:27:14 瀏覽:162
sqlserverphp 發布:2025-01-31 22:22:55 瀏覽:877
曲馬多存儲 發布:2025-01-31 22:22:52 瀏覽:538
緩存兒歌 發布:2025-01-31 22:21:26 瀏覽:528
學java有發展嗎 發布:2025-01-31 21:44:45 瀏覽:569
HBX編程 發布:2025-01-31 21:39:26 瀏覽:161
資料庫精品課 發布:2025-01-31 21:38:14 瀏覽:421
sqlsever語句 發布:2025-01-31 21:34:57 瀏覽:145