为什么中文字符不显示??

komatuxhq 2003-03-04 04:24:42
我想实现的功能是:
合并几个文件(INC文件,HTML文件)来生成ASPX文件
问题:
中文字符不显示,而且显示是为乱码。

有源文件如下:

combine.aspx
----------------------------
<%@Import NameSpace="System.Data"%>
<%@Import NameSpace="System.Web.UI.HtmlControls"%>
<%@Import NameSpace="System.Web.UI.WebControls"%>
<%@Import NameSpace="System.Text"%>
<%@Import NameSpace="System.IO"%>
<!DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.0 Transitional//EN>
<HTML><HEAD>
<META http-equiv=Content-Type content=text/html; charset=unicode>
<META content=MSHTML 6.00.2600.0 name=GENERATOR></HEAD>
<script language=C# runat=Server>
public void combine()
{
StreamWriter strWriter=File.CreateText("C:/all.aspx");
StreamReader strReader=File.OpenText("C:/part1.inc");
while(strReader.Peek()!=-1)
{
strWriter.WriteLine(strReader.ReadLine());
}

strReader=File.OpenText("C:/part2.html");
while(strReader.Peek()!=-1)
{
string templine=strReader.ReadLine();
strWriter.WriteLine(templine);
}
strWriter.WriteLine("\0");
strWriter.Close();
strReader.Close();
}

public void ServerClick(object sender, System.EventArgs e)
{
combine();
}
</script>
<BODY>
<form runat=server>
<input type=button onserverclick=ServerClick runat=server value="合并">
</form></body>
</html>

--------------------------------------
part1.inc:
--------------------------------------
<%@Import NameSpace="System.Data"%>
<%@Import NameSpace="System.Web.UI.HtmlControls"%>
<%@Import NameSpace="System.Web.UI.WebControls"%>
----------------------------------------------
C:part2.html:
----------------------------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=unicode">
<META content="MSHTML 6.00.2600.0" name=GENERATOR></HEAD>
<BODY bgColor=#e0ffff >
<form runat=server>
<P align=center> </P>
<P>编号bh:</P>
<P>姓名xm:</P>
<P> </P></form></BODY></HTML>

--------------------------------
问题是:
该文件在.Net环境下执行时候无法识别中文,
我已经将web.config中参数requestingencoding改为gb2312了
...全文
147 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
念.夕夏 2003-03-05
  • 打赏
  • 举报
回复
<HTML><HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<META http-equiv=Content-Type content=text/html; charset=unicode>
<META content=MSHTML 6.00.2600.0 name=GENERATOR></HEAD>
hjcboy1 2003-03-04
  • 打赏
  • 举报
回复
读文件时:
StreamReader sr=new StreamReader("C:/part2.html",Encoding.GetEncoding("gb2312"));
gOODiDEA 2003-03-04
  • 打赏
  • 举报
回复
可以参考webdiyer(webdiyer)的说法,打开文件是指定编码方式
blade_780515 2003-03-04
  • 打赏
  • 举报
回复
汉字字符转换为系统可识别:
Server.UrlEncode(“包括汉字的字符”);
webdiyer 2003-03-04
  • 打赏
  • 举报
回复
File.OpenText方法默认是打开UTF-8编码的文件,如果不是这个编码的文件,读取时就会出现乱码。
webdiyer 2003-03-04
  • 打赏
  • 举报
回复
web.config中没有requestingencoding,只有Globalization配置节有requestEncoding属性。

62,241

社区成员

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

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

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

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