Response.Clear();
string strFileName = ds.Tables[0].Rows[0]["t12_IPCertKindName"].ToString();
Response.AddHeader("Content-Disposition", "online; filename="+strFileName);
Response.ContentType = "application/pdf";
byte[] data = (byte[])ds.Tables[0].Rows[0]["t12_File"];
Response .BinaryWrite(data);
Response.End();这是一段从数据库里把文件以流的形式下载的代码,
其中strFileName 是存在数据库里面的一段varchar2的字段,从数据库里读出来的时候是中文,
我用它来写文件头,结果在文件保存对话框里面出现的文件名是乱码了!
我怎么样才能使在文件下载对话框里面使文件名和DB的一致。
求教各位高手,不胜感激!

解决方案 »

  1.   

    因为我存在数据库里面的t12_IPCertKindName就是一段中文字,
    取出来当然就是中文字。
    我用这段中文字来写文件头 也就是Response.AddHeader("Content-Disposition", "online; filename="+strFileName);当出现文件下载对话框的时候,我想要得是在对话框中显示文件名就是t12_IPCertKindName
      

  2.   

    需要Html编码,看一下就清楚了。
    http://blog.csdn.net/goody9807/articles/138871.aspx