2011-08-09 12 views
1

私はローカルに保存するファイルの場所stringsのリストを取得するプロジェクトを持っています。これを行うにはFileUploaderを使用します。私はこれまでのところ、このような何かをしようとしています:FileUploadの使用C#

  FileUpload filesaver = new FileUpload(); 

      //Iterate over each files (InputFiles is a linked list of file locations) 
      foreach (string File in InputFiles) 
      { 
       //Get file 
       Stream fileLoaded = OpenFile(File); 

       filesaver.FileContent = fileLoaded; 

       //Save file      
       filesaver.SaveAs(DownloadLocation); 

       //Code...} 

問題はfilesaver.FileContent = fileLoaded;が有効なコール(FileContentが読み取り専用である)ではないということです。

ファイルローダにファイルを取得して、そのファイルの場所の文字列があれば保存することはできますか?私はthe FileUpload Class

+0

asp.netファイルアップローダを使用していますか? –

+0

asp.netまたはwindowsフォームにいますか?ファイルを特定の場所に保存したい場合はストリームを使用できませんか? –

+0

asp.net。私は[this](http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.fileupload.aspx)を使用しています –

答えて

1

ASP.NET FileUploaderは、クライアント側がサーバー側にファイルを送信しています。文字列としてファイルパスを送信しないので、ファイルパスを傍受してサーバー側で「アップロード」する方法はありません。それがあなたの意図ならば、あなたはここからそこに着く方法を見つけるつもりはありません。

実際のファイルのバイナリビットがサーバーに到達した後に保存する場合は、データベースまたはファイルシステムにデータを永続化する多くの例があります。

パスを文字列として取得しようとしている場合、ファイルアップローダは最適な選択肢ではありませんが、ファイルパス文字列はクライアント側であればサーバー側では使用できません。

1

を使用しています

編集はあなただけ使用することができます。

If (filesaver.HasFile) 
{ 
     filesaver.SaveAs("C:\YourFilePath\" & filesaver.FileName); 
} 
+0

これは、ユーザーが持つ問題に答えるものではありません。 –

+0

これは動作しますか?私がファイルをファイルセーバーに設定していない場合でも? –

+0

ASP.NETでFileUploadを設定すると、ファイルがそこに保存されます。リンクしたページのコード例に従ってください。 –

関連する問題