FTP 两种传输模式 Binary 和 ASCII 的区别
文章目錄
- 區別
- 原理分析
- 建議
- 常規作法
- 習慣作法
區別
ASCII 模式和 Binary 模式的區別是換行符的處理,Binary 模式不對數據進行任何處理,ASCII 模式將換行符轉換為目標主機操作系統的換行符,換行符號在Unix下是\n(0A),Windows下是\r\n(0D0A),Mac下是\r(0D)。
原理分析
當在一個 Windows 操作系統上用 ASCII 方式從 Unix 服務器上下載文件時,無論是文本文件還是二進制文件(字節碼文件/可執行文件/壓縮文件等),都會進行檢測和轉換:每檢測到一個 0A(\n),則認為是換行符號,就會自動插入 0D(\r)形成 Windows 下的換行符。
顯然,如果下載的是文本文件,這種轉換是很有用的,下載后我們能在 Windows 下看到分行正常的文本內容,否則我們看到的是中間夾雜著小黑方塊的不換行的一堆文字;然而如果下載的是二進制文件,這種轉換無異于畫蛇添足,破壞了整個文件。
建議
對于 ASCII 文件(文本文件)采用 ASCII 模式下載和上傳,對于 Binary 文件(非文本文件)則采用 Binary 模式下載和上傳;
任何一種傳輸模式都可以
常規作法
一般來說,我們最好都用 Binary 模式來傳輸資源,這樣可以保證不出錯。如果有文本格式轉換的問題,即unix格式的文本和dos格式的文本之間的轉換,有很多工具可以做的,不要在ftp傳輸的時候冒險,尤其是你如果對這些東西不是非常清楚的話。
習慣作法
在 Windows下編輯的文件(dos 格式)可以先轉換成 Unix 格式的文件,然后使用 FTP 的 Binary 模式上傳到遠程的 Unix 主機上。
例如,你可以使用工具 UltraEdit 的 Conversion 功能,也可以使用 UltraEdit 打開或編輯后另存為 Unix Terminators-LF 的格式。
文件格式轉換工具:dos2unix、UltraEdit
這樣處理的好處:
總結
以上是生活随笔為你收集整理的FTP 两种传输模式 Binary 和 ASCII 的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎样选择适合你的主板电脑主板如何选择
- 下一篇: 国家标准标点符号用法