Android FTP下载异常(找不到文件)

我试图通过FTP检索文件,但我在LogCat中出现以下错误:java.io.FileNotFoundException:/config.txt(只读文件系统)

我已验证该文件存在于服务器上,并且可以通过在Web浏览器中双击来阅读它。

任何人都可以帮忙吗? 这里是我使用的代码:

 FTPClient client = new FTPClient();
 FileOutputStream fos = null;

 try {
     client.connect("xxx.xxx.xxx.xxx");
     client.enterLocalPassiveMode();
     client.login("user", "pass");

     //
     // The remote file to be downloaded.
     //
     String filename = "config.txt";
     fos = new FileOutputStream(filename);

     //
     // Download file from FTP server
     //
     client.retrieveFile("/" + filename, fos);
 } catch (IOException e) {
     e.printStackTrace();
 } finally {
     try {
         if (fos != null) {
             fos.close();
         }
         client.disconnect();
     } catch (IOException e) {
         e.printStackTrace();
     }

您无法将文件保存在手机的根目录中。 使用Environment.getExternalStorageDirectory()获取SD卡目录的文件对象并将文件保存到那里。 也许为它创建一个目录。 要做到这一点,你需要权限android.permission.WRITE_EXTERNAL_STORAGE

示例代码:

try {
    File external = Environment.getExternalStorageDirectory();
    String pathTofile = external.getAbsolutePath() + "/config.txt";
    FileOutputStream file = new FileOutputStream(pathTofile);
} catch (Exception e) {
    e.printStackTrace();
}

您正在尝试读入文件,但您已创建OutputStream ,您需要创建一个inputStream ,然后从该输入流中读取该文件。

这里有一篇很棒的文章,其代码非常有用。 这应该让你朝着正确的方向前进。

http://www.roseindia.net/java/beginners/java-read-file-line-by-line.shtml

我希望这有帮助!

祝你好运

链接地址: http://www.djcxy.com/p/78457.html

上一篇: Android FTP download exception (file not found)

下一篇: Unable to intercept and manipulate HttpServletResponse in Spring Boot