主题:  在非中文版的asp.net环境下使用中文

5D荣誉斑竹

职务:普通成员
等级:2
金币:1.0
发贴:343
#12002/1/13 23:45:29
一看题目你一定觉得有点莫名其妙:直接安装中文版不就得了?呵呵----我也不是闲的没事干。大家知道,现在国内很少有支持asp.net的空间,而国外支持asp.net的空间却不是asp.net的中文版(好像是废话),所以在本地调试好的程序一旦传到国外的空间,就会出现莫名其妙的错误。前两天一位网友问到这个问题,本来觉得很简单,谁知道摆弄了好一阵才搞定。现在整理一下,写出来一共大家参考。
要想显示中文,需要进行两方面的配置。
一、在asp.net文件的开头增加一句<%@Page Language="C#" ResponseEncoding="gb2312"%> 。前面的部分指定了使用的脚本语言,你可以修改为自己使用的,后面的才是关键。如果你省略了ResponseEncoding="gb2312" ,那么你在配置文件中就要增加这一句。也就是说,这一步其实可以省略。
二、需要在配置文件web.config中进行国际化配置。其中fileEncoding="gb2312"是让文件以什么国家语言来显示,requestEncoding="gb2312"和responseEncoding="gb2312"两句分别代表交互的时候使用的国家语言。不要小看这两句,没有的话,你在进行参数传递的时候会出现不能识别中文的情况。其中responseEncoding="gb2312"也可以加到aspx文件中,其他的两个不可以。
也就是说,只要配置好web.config文件就可以达到显示中文的目的,避免在每一个页面上都增加一句配置语言。
请看下面完整的例子:
配置文件:web.config的内容:


fileEncoding="gb2312"
requestEncoding="gb2312"

responseEncoding="gb2312"
/>



要显示中文的asp.net文件index.aspx :
<%@Page Language="C#" ResponseEncoding="gb2312"%>













以上内容已经过调试,请看http://www27.brinkster.com/yangwq/index.aspx
其它更多的国际化方面的内容,比如同一个页面显示几种不同的语言等
对了,www.brinkster.com免费提供asp/asp.net空间,容量是30M