0

Java で関数を作成しようとしています:

public static void upload_files(String us, String pw, String ip, String f){
 try
 {
    FTPClient client = new FTPClient();
    client.connect(ip);
    client.login(us,pw);
    client.upload(f);
 } catch(Exception e) {
    e.printStackTrace();
 }
}

Apache ライブラリを追加しましたが、残念ながら "upload" 行でエラーが発生しました。アップロード方法を正しく使用していないと思いますが、方法がわかりません。

Netbeans でコンパイルすると、「client.upload(f);」というエラー行があることに気付きます。

出力に表示されるエラーは、「java.lang.RuntimeException: Uncompilable source code - Erroneous sym type: org.apache.commons.net.ftp.FTPClient.upload」です。

よろしくお願いします。nb:「f」はファイルへの直接パスです


編集 :

問題は「かなり」解決されました。現在、いくつかのファイルを ftp サーバーにアップロードしていますが、残念ながら、以下に示すように、それらはすべて空です。

4

1 に答える 1

2

Apache FTPClient にはメソッドがありませんupload

それが持っているのは、storeFileと呼ばれるメソッド です。

パラメータとして、ファイルがサーバー上で持つべき名前とInputStream. InputStream はローカル ファイルから読み取るため、以下が必要です。

 InputStream is = new FileInputStream( f );
 client.storeFile( some_name, is );
于 2012-08-08T19:33:38.313 に答える