Java 为什么IOUtils.copy()只工作一次[APACHE COMMON NET+;IO]

Java 为什么IOUtils.copy()只工作一次[APACHE COMMON NET+;IO],java,apache,file,ftp,apache-commons,Java,Apache,File,Ftp,Apache Commons,我有一个程序,需要在FTP中获取不同文件中的信息 我正在使用apachecommonnet和io。正如您在下面看到的,我使用了sd IOUtils.copy()。 然后,我将内容复制到txt文件中 StringWriter stringWriter_getWebVersion = new StringWriter(); IOUtils.copy(FTPManager.retrieveFileStream(root + "/Version.txt"), stringWriter_getWebVer

我有一个程序,需要在FTP中获取不同文件中的信息

我正在使用apachecommonnet和io。正如您在下面看到的,我使用了sd IOUtils.copy()。 然后,我将内容复制到txt文件中

StringWriter stringWriter_getWebVersion = new StringWriter();
IOUtils.copy(FTPManager.retrieveFileStream(root + "/Version.txt"), stringWriter_getWebVersion, "UTF-8");
string_WebVersion = stringWriter_getWebVersion.toString();

StringWriter stringWriter_getWhatsNew = new StringWriter();
IOUtils.copy(FTPManager.retrieveFileStream(root + "/New.txt"), stringWriter_getWhatsNew, "UTF-8");
string_WhatsNew = stringWriter_getWhatsNew.toString();
如果我只放了前3行(这3行是复制文件内容所必需的,最后3行是第二个副本),它可以正常工作,但如果我放了第二个副本,由于某种原因它将无法工作

以下是错误:

Exception in thread "main" java.lang.NullPointerException
    at java.io.Reader.<init>(Reader.java:78)
    at java.io.InputStreamReader.<init>(InputStreamReader.java:113)
    at org.apache.commons.io.IOUtils.copy(IOUtils.java:1906)
    at org.apache.commons.io.IOUtils.copy(IOUtils.java:1933)
    at ---.---.---.----.------(----.java:32) //Voir 5eme ligne du code.
    at -------(---.java:19)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:483)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)
根字符串:“更新/MSU”

谢谢你的帮助


注意:不要标记为dupe from,因为我不是这样做的。(+他正在servlet上执行此操作)

您是否检查了FTPManager实现?如果FTPManager无法找到该文件(当请求多个文件时)@DevBlanked我检查过,但它不是从那里来的,则会出现显示的异常。但我会再看一遍。你不是在三天前问过同样的问题吗?@guido我问过,但我不小心删除了它(错误地点击了编辑按钮)。所以我重新创造了它,但更加详细和清晰;FTPManager类来自哪里?它似乎不在下议院?我猜静态
retrieveFileStream
调用第二次返回null
logiciel (the account folder of the user (in /home for people who know Linux))
     |-> Update
           |-> MSU (Test folder)
                |-> Version.txt    (content: 1.1.0)
                |-> New.txt    (content: 1.0.0)