java 中文问题

03-08-19 bnuzl
我正参加一个短信项目。在类文件中有返回中文的方法。于是我在编译的是后加上了 -encoding ISO8859_1.短信内容没有问题。但是jsp页面只要调用了返回中文类的方法,整个jsp页面的中文都有问题。但是返回的中文没有问题。我在文件开头加了:page contentType="text/html;charset=ISO8859_1"。后来还在head中加了gb2312。都不行。请教大家了。谢先

gumpli
2003-08-20 11:47
拷了一段话,不知有没有用:

1.对于JSP正文的解释:

--Tomcat首先看一下你的叶面中有没有"<%@page include的符号。有,则在相同

--地方设定response.setContentType(..);按照encoding的来读,没有他按照8859_1

--读取文件,然后用UTF-8写成.java文件,然后用sun.tools.Main去读取这个文件,

--(当然它使用UTF-8去读),然后编译成class文件

--setContentType改变的是out的属性,out变量缺省的encoding是8859_1

2.对Parameter的解释

--很不幸Parameter只有ISO8859_1的解释,这个质料可以在servlet的实现代码中找到。

3.对include的解释

格式的,但是很不幸,由于那个写"org.apache.jasper.compiler.Parser"的人

在数组JspUtil.ValidAttribute[]忘记加了一个参数:encoding,因此导致不支

持这种方式。你完全可以编译源代码,加上对encoding的支持

总结:

如果你在NT底下,最简单的方法就是欺骗java,不加任何Encoding变量:

<html>

你好<%=request.getParameter("value")%>

</html>

http://localhost/test/test.jsp?value=你

猜你喜欢