如何上传文件并将其保存在本地计算机的特定文件夹中?

时间:2013-06-17 07:10:09

标签: c# asp.net visual-studio-2010 file-upload

我想将文件(上传)文件发送到我在项目中创建的特定文件夹(在本地计算机上而不是服务器上!)。

以下是我正在使用的代码:

string filename = Path.GetFileName(FileUpload1.PostedFile.FileName);
FileUpload1.SaveAs(Server.MapPath("images/" + filename));

我已添加Fileupload,上面的代码位于按钮中。但代码不会起作用。问题是什么?

我也使用过这种形式:

string filename = Path.GetFileName(FileUpload1.PostedFile.FileName);
FileUpload1.SaveAs(Server.MapPath("~DesktopModules/UshtrimiDyte/images/" + filename));

我也使用双反斜杠,但这也没有奏效。我怎样才能解决我的问题?

1 个答案:

答案 0 :(得分:0)

试试上面的

 string path = Server.MapPath("~DesktopModules/UshtrimiDyte/images/" + filename);   
 System.IO.Stream myStream;
        Int32 fileLen;
        byte[] Input = null;
        fileLen = FileUpload1.PostedFile.ContentLength;
        if (fileLen > 0)
        {
            Input = new Byte[fileLen];
            myStream = FileUpload1.FileContent;
            myStream.Read(Input, 0, fileLen);
            string I_Docx_type = FileUploadFieldDoc.FileName.Substring(FileUpload1.FileName.LastIndexOf(".") + 1);
            WriteToFile(path +  "." +I_Docx_type, ref Input);
            path += "." + I_Docx_type;

        }

方法

 private void WriteToFile(string strPath, ref byte[] Buffer)
    {
        // Create a file
        System.IO.FileStream newFile = new System.IO.FileStream(strPath, System.IO.FileMode.Create);

        // Write data to the file
        newFile.Write(Buffer, 0, Buffer.Length);

        // Close file
        newFile.Close();

    }