2011-07-08 29 views
-3

私のプロジェクトにファイルをアップロードしたいのですが。アップロードボタンをクリックすると、ファイルはクライアントシステムに保存され、ファイル名とパスはデータベースに保存されます。ダウンロードボタンをクリックすると、データベースに保存されているファイル名とパスに基づいてダウンロードする必要があります。変更を加えた後、別のファイル名としてアップロードする必要があり、前のファイルの内容には影響しません。このプロセスのコードがあれば、それを私に送ってください。あなたはinputタイプfileを使用して、サーバー上で応じてこれを処理し、ファイルをアップロードするには、事前ファイルをアップロードしてダウンロードする方法

+3

アイデアは、あなたがコードを書くことになっているということです。 – Treborbob

答えて

1

感謝。あなたが探しているものをそのまま通過する完全なtutorial on CodePlexがここにあります。

警告生産時にコードを使用しないでください。いくつかのセキュリティリスクに気づいただけですが、これを使用してプロセスを理解し、SQLインジェクションやオーバーフローを回避する方法を理解してください。

これは、MSDNの別の素晴らしい記事で、File Uploading in ASP.NET 2.0をカバーしています。

0
string FolderPath = "yourpath"; 

string FileName = "Namefile"; 

string FilePath = Server.MapPath("~/" + FileName); 

string Extension = Path.GetExtension(FileName); 

Response.ContentType = "Application/x-msexcel"; 
Response.AppendHeader("Content-Disposition", "attachment; filename=" + FileName + ""); 

// Write the file to the Response 
const int bufferLength = 10000; 
byte[] buffer = new Byte[bufferLength]; 
int length = 0; 
Stream download = null; 
try { 
    download = new FileStream(Server.MapPath("~/" + FileName), 
           FileMode.Open, 
           FileAccess.Read); 
    do { 
     if (Response.IsClientConnected) { 
      length = download.Read(buffer, 0, bufferLength); 
      Response.OutputStream.Write(buffer, 0, length); 
      buffer = new Byte[bufferLength]; 
     } 
     else { 
      length = -1; 
     } 
    } 
    while (length > 0); 
    Response.Flush(); 
    Response.End(); 
} 
finally { 
    if (download != null) 
     download.Close(); 
} 
関連する問題