文件下载出现的问题,急急急
我的文件下载的代码如下VB.NET
Dim fileName As String
Dim strFileName As String
Dim fileSize As Long
Dim Buffer() As Byte
Dim myF As System.IO.FileStream
Dim myFileStream As System.IO.FileStream
strFileName = "固定资产管理办法.doc"
fileName = strFileName
myF = System.IO.File.OpenRead(Server.MapPath(strFileName))
Response.Write(strFileName)
strFileName = System.Web.HttpUtility.UrlEncode(System.Text.UTF8Encoding.UTF8.GetBytes(strFileName))
Response.Write(strFileName)
Response.ContentType = myF.GetType().ToString()
Response.Charset = "GB2312"
Response.AddHeader("Content-Disposition", "attachment; filename=" + fileName)
myFileStream = New System.IO.FileStream(Server.MapPath(fileName), System.IO.FileMode.Open, System.IO.FileAccess.Read, System.IO.FileShare.Read)
fileSize = myFileStream.Length
ReDim Buffer(CInt(fileSize))
myFileStream.Read(Buffer, 0, CInt(fileSize))
myFileStream.Close()
Response.BinaryWrite(Buffer)
Response.End()
显示提示保存的文件名为乱码,同样的C#代码如下:
string strFileName ="";
string filename="";
strFileName = "doc\\固定资产管理办法.doc";
filename =strFileName;
FileStream myF=File.OpenRead(Server.MapPath(strFileName));//通过想对路径取得物理的路径
Response.Write(strFileName);
strFileName = HttpUtility.UrlEncode(System.Text.Encoding.UTF8.GetBytes(strFileName));
Response.Clear();
Response.Write(strFileName);
Response.ContentType= myF.GetType().ToString();
Response.Charset = "UTF-8";
Response.AddHeader("Content-Disposition", "attachment; filename="+strFileName);
System.IO.FileStream MyFileStream =new FileStream(Server.MapPath(filename),System.IO.FileMode.Open,System.IO.FileAccess.Read,System.IO.FileShare.Read);
long FileSize = MyFileStream.Length;
byte[] Buffer = new byte[(int)FileSize];
MyFileStream.Read(Buffer, 0, (int)FileSize);
MyFileStream.Close();
Response.BinaryWrite(Buffer);
Response.End();
显示的文件名正常,请高手指点。
这两段代码下载的压缩文件都是正常的,但下载的word文档过来后打开都是乱码,不知何故,高手帮忙啊。