0

对不起大家,我一整天都在添加FTP,但没有成功......

以下是我如何将 FTP 添加到我的 android 代码的步骤。

来自laval@work的方法 A

1) http://commons.apache.org/proper/commons-net//download_net.cgi

从链接中,我下载了一个 zip 文件夹:Commons Net 3.2(需要 Java 1.5 或更高版本)>> Source >>commons-net-3.2-src.zip

2)解压文件夹到我的桌面,commons-net-3.2-src

3) 将文件夹 src/main/java/org 复制到我的代码的 src 文件夹中

4)允许在清单中使用权限“INTERNET”

5)将以下代码添加到 src/MainActivity (我的应用程序的源代码)

6)ftp代码:来自android社区

public boolean ftpConnect(String host, String username, String password,
        int port) {
    try {
        ftp = new FTPClient();
        // connecting to the host
        ftp.connect(host, port);

        // now check the reply code, if positive mean connection success
        if (FTPReply.isPositiveCompletion(ftp.getReplyCode())) {
            // login using username & password
            Log.d(TAG, "connection success" + host);
            boolean status = ftp.login(username, password);

            ftp.setFileType(FTP.BINARY_FILE_TYPE);
            ftp.enterLocalPassiveMode();

            return status;
        }
    } catch (Exception e) {
        Log.e(TAG, "Error: could not connect to host "
                + e.getStackTrace().toString() + e.getMessage());
    }

    return false;
}

7) 在 OnCreate 中,添加

ftpConnect("192.168.1.71", "user", "password", 21);

方法 B这里

1) http://commons.apache.org/proper/commons-net//download_net.cgi

从链接中,下载了一个 zip 文件夹:Commons Net 3.2(需要 Java 1.5 或更高版本)>> Binaries >>commons-net-3.2-bin.zip

2)解压文件夹到我的桌面,commons-net-3.2-bin

3)将两个java文件commons-net-3.2和commons-net-3.2-sources复制到android app的libs文件中

4) 打开应用程序的属性对话框,导航到“Java Build Path”->“Libraries”并添加对两个 jar 的引用。导航到“Java Build Path”->“Order and Export”并选择导出这两个jar。

5) 同方法 A,步骤 4 - 7

但是,我仍然无法连接到 FTP 服务器.... =[=[=[=[ 因为 LogCat 仍然显示错误消息“错误:无法连接到主机 [Ljava.lang.StackTraceElement;@420c3228null”

我还在我的选项卡上下载了一个 FTP 应用程序 (ftpcafe),并证明用户名和位置设置正常...

=[请,有人可以帮忙吗?谢谢!!

4

1 回答 1

0

试试这个代码。

SimpleFTP ftp = new SimpleFTP();

         try
         {
            // Connect to an FTP server on port 21.

            ftp.connect("host", 21, "username", "password");

            // Set binary mode.
            ftp.bin();

            // Change to a new working directory on the FTP server.


            ftp.cwd("/httpdocs/yourdestinationfolderinftp");

            // Upload some files.
            ftp.stor(new File("/mnt/sdcard/ftp.jpg"));              

            // Quit from the FTP server.
            ftp.disconnect();

         }
         catch (Exception e) {
            // TODO: handle exception
             e.printStackTrace();
        }


    }
于 2013-03-05T09:35:10.470 回答