如何在 Java 中使用 FTPClient 复制 FTP 服务器中的文件?

How to copy a file in FTP server using FTPClient in Java?(如何在 Java 中使用 FTPClient 复制 FTP 服务器中的文件?)
本文介绍了如何在 Java 中使用 FTPClient 复制 FTP 服务器中的文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我有一个 CSV 文件,我需要复制它并在同一路径中重命名它.

I have a CSV file, and I need to copy it and rename it in the same path.

我在 FTP 登录后尝试了这个:

I tried this after the FTP login:

InputStream inputStream = ftpClient.retrieveFileStream(cvs_name +".csv");
ftpClient.storeFile(cvs_name2 + ".csv",inputStream);

但是当我在服务器上验证文件时,它是空的.如何复制文件并重命名?

But when I verify the file on the server, it's empty. How can I copy a file and rename it?

推荐答案

我相信你的代码不能工作.您不能同时通过一个 FTP 连接下载和上传文件.

I believe your code cannot work. You cannot download and upload a file over a single FTP connection at the same time.

你有两个选择:

  • 首先将文件完全下载(到临时文件或内存中).

  • Download the file completely first (to a temporary file or to a memory).

如何将 ftp 服务器上的文件复制到 java 中同一服务器上的目录?显示记忆"解决方案.注意 outputStream.toByteArray() 调用.

The accepted answer to How to copy a file on the ftp server to a directory on the same server in java? shows the "to memory" solution. Note the outputStream.toByteArray() call.

打开两个连接(FTPClient 的两个实例)并在实例之间复制文件.

Open two connections (two instances of the FTPClient) and copy the file between the instances.

InputStream inputStream = ftpClient1.retrieveFileStream(cvs_name + ".csv");
ftpClient2.storeFile(cvs_name2 + ".csv", inputStream);

这篇关于如何在 Java 中使用 FTPClient 复制 FTP 服务器中的文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Android sdk 18 TextView gravity doesn#39;t work vertically(Android sdk 18 TextView 重力不能垂直工作)
Java android: appending a newline using TextView(Java android:使用 TextView 添加换行符)
How to create simple Android TextView and display text on it using java code?(如何使用 java 代码创建简单的 Android TextView 并在其上显示文本?)
Add opaque quot;shadowquot; (outline) to Android TextView(添加不透明的“阴影(大纲)到 Android TextView)
Android: Creating a Circular TextView?(Android:创建一个圆形 TextView?)
Android - set TextView TextStyle programmatically?(Android - 以编程方式设置 TextView TextStyle?)