我有一个CSV文件,我需要将其复制并在同一路径中重命名。
我在FTP登录后试过这个:
InputStream inputStream = ftpClient.retrieveFileStream(cvs_name +".csv");
ftpClient.storeFile(cvs_name2 + ".csv",inputStream);
但是当我验证服务器上的文件时,它是空的。如何复制文件并重命名?
答案 0 :(得分:2)
我相信你的代码无法运作。您无法同时通过单个FTP连接下载和上载文件。
您有两种选择:
首先完全下载文件(到临时文件或内存)。
How to copy a file on the ftp server to a directory on the same server in java?的接受答案显示了记忆"解。请注意outputStream.toByteArray()
来电。
打开两个连接(FTPClient
的两个实例)并在实例之间复制文件。
InputStream inputStream = ftpClient1.retrieveFileStream(cvs_name + ".csv");
ftpClient2.storeFile(cvs_name2 + ".csv", inputStream);