2012-04-12 12 views
0

このコードを使用するたびに、jpegがアップロードされますが、jpegsの名前はSTORであり、サーバー上には拡張子はありません。c#FileZillaサーバーファイル名の保存問題

なぜこのようなことが起きるのか、C#デスクトップアプリケーションからFileZilla FTPサーバーにファイルを保存するときにファイル名を変更する方法はありますか?

WebClient client = new WebClient(); 
client.Credentials = new NetworkCredential("username", "password"); 
client.BaseAddress = "ftp://mysite.com"; 
client.UploadFile(WebRequestMethods.Ftp.UploadFile, "C:\mypics\pic1.jpg"); 

答えて

2

client.UploadFile(remoteName, WebRequestMethods.Ftp.UploadFile , @"C:\mypics\pic1.jpg"); 

WebRequestMethods.Ftp.UploadFile値コンパイラはあなたのファイルである理由であるclient.UploadFile(REMOTENAME、ローカル名)オーバーロードを使用して、あなたのアールを想定しているので、STORであることを起こる文字列で、してみてください名前STOR

+0

これは本当の答えです! –

+0

私はどの答えが最善であるかについては引き裂かれました。あなたの答えは正しかったし、なぜ起こったのか、そしてそれを解決する方法を説明しました。 – GregH

2

@sgmooreが質問に答え);

はここで基本的なコードで、名前は無実を保護するために変更されています。

client.UploadFile("pic1.jpg", "C:\mypics\pic1.jpg"); 

第1引数はリモートファイル名、第2引数はローカルファイルへのパスです。

他のftpクライアントの実装を.netで試すこともできます(とにかくFTPは.NET標準ライブラリでひどく実装されています)。私はftplibを使用しています。

+0

すばらしい答え!私は公正になるために最初に答えた人を確認しなければならなかった。 できれば私はあなたにチェックをしたいと思います! – GregH

+0

@GregHそれは大丈夫です、私は完全にsgmooreが正解を与えた最初の人であったことに全く同意しています。そして、とにかくそれはちょっとしたバーチャルスコアです。私はそれを真剣に受けませんでした:) –

関連する問題