使用java向FTP上傳或下載壓縮檔案時的問題
今天在使用java向FTP伺服器傳輸檔案時遇到了問題,這個檔案是好多圖片的壓縮檔案,直接使用 ftpClient.storeFile(f.getName(), instream); 會將壓縮檔案傳入FTP伺服器,但是在FTP伺服器解壓時發現,壓縮包裡面的圖片解壓不出來,檔案大小是一樣的,但是裡面只有一個空白檔案,將FTP伺服器上的檔案下載下來,同樣打不開
我理解為上傳檔案損壞了,多測試了幾組壓縮檔案都是如此
解決方法:
FTP協議規定了兩種傳輸方式分別是ASCII與binary方式
ASCII方式,這種機制指,在針對傳輸內容是ASCII碼文字時,檔案內容會被調整,有時會造成傳輸的檔案被損壞,ASCII方式會把檔案中的某些字串位丟棄,所以不能保證檔案資料的每一位都是重要的。
binary方式,首先二進位制方式保證了檔案內容所有資料位都是重要的。
傳輸時使用二進位制方式傳輸
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
再使用
ftpClient.storeFile(f.getName(), instream);後問題解決
相關推薦
使用java向FTP上傳或下載壓縮檔案時的問題
今天在使用java向FTP伺服器傳輸檔案時遇到了問題,這個檔案是好多圖片的壓縮檔案,直接使用 ftpClient.storeFile(f.getName(), instream); 會將壓縮檔案傳入FTP伺服器,但是在FTP伺服器解壓時發現,壓縮包裡面的圖片解壓不出來,檔案大小是一樣的,但
java 通過FTP上傳與下載檔案
Web開發時常會遇到需要使用者上傳檔案,並且把檔案儲存下來。 通常來說我們不會把檔案存放在與Tomcat同一個伺服器中,而是有一個專門的檔案伺服器存放檔案。 如何將檔案儲存到檔案伺服器中,這時候可以選擇使用FTP將檔案傳輸到專門的伺服器。 使用FTP傳輸檔案,我們所需要
使用vue上傳或下載excel檔案
<form> <input type="file" name="fileup" id="uploadEventFile" v-on:change="fileChange($event)" style="display:none" />
Java中向ftp上傳、下載文件
utf-8 local iso password NPU 用戶名 用戶 失敗 集合 最近的一個項目跟ftp打交道很多,經常需要向ftp上傳、下載文件,現在總結一下公共方法。 上傳 /** * 文件上傳 * * @param ip
java實現FTP上傳(檔案)、下載(檔案、資料夾、資料夾遞迴)、刪除(檔案、資料夾遞迴)
提示:必須先保證有在FTP上上傳、下載、刪除的許可權! 本文結構 ---- 先給出測試樣例(圖片版),再給出工具類程式碼(文字版)! 上傳測試 注意:.uploadFile(String remoteDir, String remoteFileName, F
java實現FTP上傳下載:FTPClient類進行FTP上傳下載大檔案(包含導致假死現象)
介紹: FTPClient是一個強大的FTP上傳下載工具,可以實現各種方式的ftp檔案傳輸,可以支援上傳下載各種大檔案(已在實踐中使用),而且存在官網使使用者方便的使用這個工具等等。 1.首先,程式中設定ftp請求方式為被動模式,即程式去請求ftp伺服器,要求伺服器來
Java 實現Ftp上傳下載檔案
最近專案中需要實現將檔案先存放到ftp上,需要的時候再從ftp上下載,做的過程中碰到了問題,發現中文檔名的無法上傳到ftp上,ftp上的中文檔名的檔案下載不下來,幾番折騰,終於搞定了,記錄一下備忘。首先給工程新增maven依賴,pom.xml檔案中新增:<depende
JAVA 實現FTP上傳下載(sun.net.ftp.FtpClient)
package com.why.ftp; import java.io.DataInputStream; import java.io.File; import java.io.FileInputStream; import java
python之FTP上傳和下載
塊大小 對象 direct 實例 color 二進制文件 pass nbsp orb 1 # FTP操作 2 import ftplib 3 4 host = ‘192.168.20.191‘ 5 username = ‘ftpuser‘ 6 passwor
java文件上傳與下載
存在 leg https exception 上傳 ring Coding cnblogs XML 不多說,直接上實例代碼!!! 我使用的是idea工具,maven管理。 首先,在pom.xml引入上傳文件所需要的包。 <!--fileupload-->
java通過ftp 上傳檔案到伺服器
package com.dl.utils; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import ja
用java實現ftp上傳檔案
實際專案需求:從資料庫查詢資訊,在本地生成檔案,再上傳到ftp 所用Jar包:NetComponents.jar 核心程式碼: import java.io.File; import java.io.FileInputStream; import java.io.IOExcepti
Java實現FTP上傳檔案到Linux伺服器的那些坑
一、Linux安裝FTP服務 首先Linux伺服器需要安裝FTP服務,步驟如下: 1、執行如下ftp服務安裝命令: yum install vsftpd 可能會出現如下錯誤: "Couldn't open file /m
使用指令碼在FTP上傳、下載檔案
由於最近勒索病毒變種又一次爆發,公司內部封鎖了TCP 445埠。導致原來通過檔案共享的方式上傳下載的計劃任務無法執行。所以,我開設了FTP伺服器來完成這個工作。 關於如何建立FTP伺服器,請看這裡 Windows 2012 R2上搭建IIS管理使用者的隔離模式FTP http://blog.51cto.c
Python——FTP上傳和下載
def 上傳 lib user 下載 文件名 span txt 回調 一、FTP對象方法說明 login(user=‘anonymous‘,passwd=‘‘, acct=‘‘) 登錄 FTP 服務器,所有參數都是可選的 pwd() 獲得當前工作目錄 cwd(path)
java Ftp上傳建立多層檔案的程式碼片段
StringBuilder sBuilder = new StringBuilder(); String[] pah = path.split("/");&nbs
java實現pdf上傳、下載、線上預覽、刪除、修改等功能
最近閒來無事,做了一個pdf的小功能,以供各位大神參考。下面是效果展示圖:功能主頁:點選上傳PDF按鈕:上傳檔案之後:線上預覽:開發環境:jdk_1.8 mysql_5.7開發工具:Eclipse navicat技
Android中FTP上傳、下載(含進度)
package com.ftp; import java.io.File; import java.io.IOException; import java.util.LinkedList; import com.ftp.FTP.DeleteFileProgressListener; import com.
Java實現帶表單引數的檔案上傳、下載和檔案打包下載
準備工作 知識準備 SpringBoot Maven Spring Data JPA 工具準備 IDE:IDEA 說明 在此專案中, 我將檔案上傳的一些引數(例如上傳路徑、下載路徑、檔名等)儲存在資料庫當中,這樣更加靈活。當專案部署後,只需要更改資料庫中的資
eclipse上使用git上傳或下載程式碼至github
(一)向GitHub上傳程式碼 使用eclipse自帶的git,實現上傳和下載程式碼到github。 擁有git後,我們還需要對git進行簡單的配置。Window->Preferences->Team->Git->Configurat