Android在ftp上传文件

时间:2012-08-06 11:05:45

标签: android file-upload

Android文件上传问题

我正在尝试在我的ftp服务器上传图像,它没有给我任何异常或错误,但是部署了nt图像。任何正在上传图像的人都可以识别问题。

FTPClient con = new FTPClient();

    try{
    con.connect("host",21);

    con.login(username, pswd);

    con.setFileType(FTP.BINARY_FILE_TYPE);
    con.setFileTransferMode(FTP.ASCII_FILE_TYPE);
    con.setSoTimeout(10000);
    con.enterLocalPassiveMode();
    if (con.login(username, pswd)) {
        try {
            File sFile = new File("mnt/sdcard/DCIM/download.jpg");
            // connect.setText(sFile.toString());
            BufferedInputStream buffIn = null;
            buffIn = new BufferedInputStream(
                    new FileInputStream(sFile));
            try {
                String fileName = sFile.getName();
                while (!dataUpResp) {
                    dataUpResp = con.storeFile(fileName,
                            buffIn);

                    // publishProgress("" + 10);
                }

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

        } catch (Exception e) {
            e.getMessage();
        }

    }
} catch (IOException e) {
}

1 个答案:

答案 0 :(得分:0)

您的代码中有两次登录是不是一个问题?

con.login(username, pswd); // 1st time

con.setFileType(FTP.BINARY_FILE_TYPE);
con.setFileTransferMode(FTP.ASCII_FILE_TYPE);
con.setSoTimeout(10000);
con.enterLocalPassiveMode();
if (con.login(username, pswd)) // 2nd time

此外,您没有使用FTPClient的注销/断开连接,并且没有用于流的刷新和关闭 用commons-net-3.2.jar和FileZilla FTP Server的连接尝试你的代码,它运行正常。