2012-02-09 27 views
2

次のコードはファイルを取得するためのものです(ファイルはすばらしいですが、今はちょうどイメージを使用しています)、それをサーバーにアップロードします(これはうまくいきます) 。唯一の問題は、転送後に画像に歪みが生じることです。すべてのヘルプは、いつものようにFTPClientのsetFileTransferModeが有効にならない

public void sendFile(File sendMe) throws IOException{ 
    f.connect(ip); 
    f.login(username, password); 

    String recipient=null; 
    while(!f.changeWorkingDirectory(path+recipient)){ 
     recipient=JOptionPane.showInputDialog("What is the name of the computer you are sending this to?"); 
    } 

    f.changeWorkingDirectory(path+recipient); 
    f.setFileTransferMode(FTPClient.BINARY_FILE_TYPE); 
    f.storeFile(sendMe.getName(), new BufferedInputStream(new FileInputStream(sendMe))); 
    System.out.println("Stored!"); 

    f.disconnect(); 
    System.out.println("Uploaded"); 
} 

になります。ここでは、メインの提案

...この時点では効果がありません... FTPClient.BINARY_FILE_TYPEにFTPClientのsetFileTranferModeを使用することです

は、メソッドのコードです大変感謝しています!ありがとう!

答えて

3

ファイルの種類を設定する正しい方法を使用していません。代わりにsetFileTypeを使用してください。

f.setFileType(FTPClient.BINARY_FILE_TYPE); 
+1

うわー、私はどうもありがとう.....今スマートな感じ:ここだけのものにするためのコードです! – J3RN

-2

第三者のFTPクライアントに頼るのではなく、VB.NETまたはC#で自分自身を構築してください。あなたが何かがうまくいかない場合、この方法であなたはより多くのコントロールを持つでしょう。

http://dot-net-talk.blogspot.com/2008/12/how-to-create-ftp-client-in-vbnet.html

+0

私はVB.NETを使い、それを嫌っていました。 C#多分... – J3RN

関連する問題