1

こんにちは、Javaオタクは私を助けることができますか?サブフォルダーを含むフォルダーを ftp にアップロードする必要があります。サンプルコードを見つけましたが、単一ファイルのみです。そして、フォルダーをアップロードするためにそれを変更する方法がわかりません.Googleを使用しましたが、anwserが見つかりませんでした.

        String server = "192.168.1.2";
    String username = "test";
    String password = "test";
    String local = "mnt/sdcard/shopinglist/"; #This path i need to upload

    FTPClient ftp = new FTPClient();
  try
  {
      System.out.println( "Connecting" );
      ftp.connect(server);
      if(!ftp.login(username, password))
      {
          System.out.println( "Login failed" );
          ftp.logout();
          return;
      }
      int reply = ftp.getReplyCode();
      System.out.println( "Connect returned: " + reply );
      if (!FTPReply.isPositiveCompletion(reply)) {
          ftp.disconnect();
          System.out.println( "Connection failed" );
          return;
      }
      ftp.enterLocalPassiveMode(); 
      FileInputStream in = new FileInputStream(local);
      ftp.setFileType(ftp.BINARY_FILE_TYPE);
      System.out.println( "Uploading File" );
      boolean store = ftp.storeFile("mnt/sdcard/shopinglist/",in); # ??? Any help ???
      in.close();
      ftp.logout();
      ftp.disconnect();
  }
  catch(Exception ex)
  {
      ex.printStackTrace();
  }
}

}

ありがとうございます。

4

1 に答える 1

0

役立つ場合は、以下のコードを確認してください

 Intent intent = new Intent();
    intent.setAction(Intent.ACTION_PICK);
    // FTP URL (Starts with ftp://, sftp:// or ftps:// followed by hostname and port).
    Uri ftpUri = Uri.parse("ftp://yourftpserver.com");
    intent.setDataAndType(ftpUri, "vnd.android.cursor.dir/lysesoft.andftp.uri");
    // FTP credentials (optional)
    intent.putExtra("ftp_username", "anonymous");
    intent.putExtra("ftp_password", "something@somewhere.com");
    //intent.putExtra("ftp_keyfile", "/sdcard/dsakey.txt");
    //intent.putExtra("ftp_keypass", "optionalkeypassword");
    // FTP settings (optional)
    intent.putExtra("ftp_pasv", "true");
    //intent.putExtra("ftp_resume", "true");
    //intent.putExtra("ftp_encoding", "UTF8");
    // Upload
    intent.putExtra("command_type", "upload");
    // Activity title
    intent.putExtra("progress_title", "Uploading folder ...");
    intent.putExtra("local_file1", "/sdcard/localfolder");
    // Optional initial remote folder (it must exist before upload)
    intent.putExtra("remote_folder", "remotefolder/uploadedfolder");
    startActivityForResult(intent, 2);

それが役立つかどうか教えてください

于 2012-07-25T12:50:05.957 に答える