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

时间:2012-07-25 15:34:21

标签: android ftp

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

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

有人可以帮忙吗?这是我正在使用的代码:

 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();
     }

2 个答案:

答案 0 :(得分:0)

您无法在手机根目录中保存文件。使用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();
}

答案 1 :(得分:0)

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

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

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

我希望这有帮助!

祝你好运

相关问题