Android - FTPClient - mlistFile 返回 null

标签 android ftp

我正在开发一个需要连接到 FTP 服务器的应用程序。然后,我需要获取名为“new_order.txt”的特定文件的大小。因此,我使用的方法 mlistFile(String filePath) 在我上次使用该应用程序时运行良好。但是现在,mlistFile 返回 null,当我使用 getSize() 时,我的应用程序崩溃了(但我已连接到服务器)。我真的需要一些帮助来找出问题所在。

代码如下:

try {
        String filePath = "new_order.txt";
        FTPFile ftpFile = mFtpClient.mlistFile(filePath);
        sizeFileFTPServer = ftpFile.getSize();

        File downloadedFile = new File(mainActivity.getDir("JSONDir", Context.MODE_PRIVATE), "new_order.txt");
        sizeDownloadedFile = downloadedFile.length();

    } catch (IOException e) {
        e.printStackTrace();
    }

    Log.d("SIZE FTP", Long.toString(sizeFileFTPServer));
    Log.d("SIZE LOCAL", Long.toString(sizeDownloadedFile));

    return (sizeDownloadedFile == sizeFileFTPServer);

这是我的错误:

Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'long org.apache.commons.net.ftp.FTPFile.getSize()' on a null object reference
                                                                         at test.taxi.comincar.GetUpdate.fileOrderVerification(GetUpdate.java:249)
                                                                         at test.taxi.comincar.GetUpdate.get_new_order(GetUpdate.java:151)
                                                                         at test.taxi.comincar.GetUpdate.doInBackground(GetUpdate.java:75)
                                                                         at test.taxi.comincar.GetUpdate.doInBackground(GetUpdate.java:43)
                                                                         at android.os.AsyncTask$2.call(AsyncTask.java:288)

我已连接到服务器,指定的文件存在,我上次使用此应用程序时我的代码运行良好,但现在不行了。我迷路了。

最佳答案

我也有这个问题。 使用此代码在 FTP 中获取大小

FTPFile[] ff = ftp.listFiles("/dir/file.jpg");

        if(ff != null)
        {
                ff[0].getSize();
        }

关于Android - FTPClient - mlistFile 返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37143016/

相关文章:

android - 如何仅使屏幕的一部分变暗/模糊?

sql-server - 当使用 WinSCP 选择要上传到 FTP 服务器的文件的掩码不匹配任何文件时,SSIS 任务失败

c# - 连接到 FTP 并搜索 .txt 中的文件

java - 如何从FTP读取文件而不下载它们?

android - Cordova 推送插件 : onNotificationGMC is not fired and cannot obtain regID

android - MPAndroidChart - 添加偏移顶部

Android ScrollView 在 SeekBar 移动时重置

java - 这些通知如何称呼?

C++:将大型二进制文件(2GB 到 4GB)保存到 char* 中的 RAM?

python - 在 Python 中使用 FTP 服务器上的 .txt 文件的文本填充变量