0

ファイルアップローダーコントロールを使用しています。ユーザーに次のことをしてもらいたい:

1)任意の場所を検索

2).JPGファイルまたはその他の画像形式ファイルを選択してロードします

3)その特定のファイルをDB(SQL)に保存します。

解決策:これらすべてを達成しましたが、パスをハードコーディングしました。

問題:このハードコーディングを削除して上記の3つのポイントを達成する方法がわかりません:(コードの微調整を手伝ってください:

if (FileUpload1.HasFile)
{
   FileStream FS = new FileStream(@"C:\Users\Ramakrishnan\Desktop\New folder\001.jpg", FileMode.Open, FileAccess.Read);
   byte[] img = new byte[FS.Length];
   FS.Read(img, 0, Convert.ToInt32(FS.Length));
}
4

4 に答える 4

0

これらのリンクは、winformsの例でそれを説明しています。

http://dotnetperls.com/openfiledialog

http://www.geekpedia.com/tutorial67_Using-OpenFileDialog-to-open-files.html

これはWebフォーム用です:

FileStreamへのFileUpload

于 2012-08-24T15:06:42.213 に答える
0

FileUpload1.FileName

方法:FileUploadWebサーバーコントロールを使用してファイルをアップロードする

于 2012-08-24T14:59:06.207 に答える
0
        string filename = Path.GetFileName(FileUpload1.FileName);
        FileStream FS = new FileStream(filename, FileMode.Open, FileAccess.Read);
于 2012-08-24T15:07:44.363 に答える
0

ファイルアップロードコントロールにはストリームプロパティがあり、FSvaiableを。に置き換えるだけですFileUpload1.FileContent

**更新**

コメントでの議論に基づいて、私はあなたがまだそれを間違っていると思います。

コードは次のようになります。

if (FileUpload1.HasFile)
{
   byte[] img = new byte[FileUpload1.FileContents.Length];
   FileUpload1.FileContents.Read(img, 0, Convert.ToInt32(FS.Length));
   // Store the image in the DB
}

ファイルシステムからファイルを開こうとする理由はありません。目的のファイルがWebサーバーのファイルシステムに存在しません

于 2012-08-24T15:23:23.497 に答える