如果你使用 FTP 上傳文件,你可能已經注意到只有 JSON 文件會被成功寫入服務器。這是因為 FTP 協議本身只支持 ASCII 文本文件的傳輸。而 JSON 文件是純文本文件,因此可以被成功上傳。
void uploadFile(String fileName, String ftpServerUrl, String ftpUserName, String ftpPassword) { FileInputStream inputStream = null; try { File file = new File(fileName); inputStream = new FileInputStream(file); FTPClient ftpClient = new FTPClient(); ftpClient.connect(ftpServerUrl); ftpClient.login(ftpUserName, ftpPassword); ftpClient.setFileType(FTP.ASCII_FILE_TYPE); boolean success = ftpClient.storeFile(file.getName(), inputStream); if (success) { System.out.println("File " + fileName + " has been uploaded successfully."); } } catch (Exception e) { e.printStackTrace(); } finally { try { inputStream.close(); } catch (Exception e) { e.printStackTrace(); } } }
如果你需要上傳其他類型的文件,比如圖片或視頻,你可以使用 FTP 協議中的二進制文件傳輸。這可以通過將文件類型設置為 FTP.BINARY_FILE_TYPE 實現:
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
然而,請注意在二進制傳輸時,FTP 服務器不會對文件內容進行轉換。因此,請確保上傳的文件類型正確,否則這些文件可能會損壞或無法使用。
下一篇vue復習提綱