高分急等:如何设置生成文本文件的字符集为DOS类型?

pc7 2004-11-04 10:07:42
我做了一个服务器端动态生成一个文本文件,让客户下载的功能,但是发现下载下来的文本文件都是采用U8-DOS编码的(使用UltraEdit打开,状态栏显示是U8-DOS)。但是要求必须是DOS格式的才可以。
代码如下:
// 从缓冲区中清除当前输出内容
Response.Clear();

// 添加头信息,为"文件下载/另存为"对话框指定默认文件名
Response.AddHeader("Content-Disposition", "attachment; filename="+getSessionID()+".txt");

//// 添加头信息,指定文件大小,让浏览器能够显示下载进度
//Response.AddHeader("Content-Length", str.Length.ToString() );

// 制定返回文件的字符集
//Response.Charset = "iso-8859-2"; //设置Charset,对输入好像没有任何效果
//Response.ContentEncoding=new System.Text.UTF8Encoding();//系统只提供ASCIIEncoding、UTF8Encoding和UnicodeEnding,分别测验了一下,返回结果要么乱码,要么不是DOS字符集的。

// 指定返回的是一个不能被客户端读取的流,必须被下载
Response.ContentType = "text/text";

// 把文件流发送到客户端
Response.Write("文件开始");

请问应该如何设置Response的输出字符集?
通过直接设置Response的CharSet或者ContentEncoding属性吗?
Response.Write的输入字符串是否需要转换成相应的字符集,如何转换一个字符串的字符集?

请各位大侠多多帮助了,谢谢!
...全文
190 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
pc7 2004-11-05
  • 打赏
  • 举报
回复
问题搞定,需要做如下设置:
Response.ContentEncoding=System.Text.Encoding.GetEncoding("GB2312");
感谢2位的帮助,;)
pc7 2004-11-04
  • 打赏
  • 举报
回复
hi,icyer
如何使用GB2312啊?能否说得详细一点,因为我直接给CharSet属性设置,不会报错,但也没有任何效果。
icyer 2004-11-04
  • 打赏
  • 举报
回复
使用GB2312试试
jackie615 2004-11-04
  • 打赏
  • 举报
回复
up


接点分升★
pc7 2004-11-04
  • 打赏
  • 举报
回复
我试过把Response.ContentEncoding=new System.Text.UTF7Encoding();
再用Encoding.convert函数将所有需要写出的字符串转换成utf7的字符集,但是结果还是一样,好像这个convert函数一点效果都没有看到。:(

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧