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