1. 在jsp页面的页首加:<%@ page contentType="text/html;charset=gb2312"%>
2. 与数据库的连接字符串用下面这句:jdbc:mysql://localhost/dbname?useUnicode=true&characterEncoding=gb2312
2. 与数据库的连接字符串用下面这句:jdbc:mysql://localhost/dbname?useUnicode=true&characterEncoding=gb2312
解决方案 »
- 为什么银行系统用aspx做,或者说是??
- Linux 下Struts 部署问题,急。。。
- 下载了一个jsp的源码!不知道怎么发布啊!清高手指点!!!
- 大家帮帮忙,我在写jsp下载的时候,当下载的筐跳出来的时候,点打开无问题,点保存就出问题。
- 云计算
- 向各位高手求救!!!
- jsp里面可不可以用SETTIMEOUT??
- 在JSP中按扭的使用问题??????????
- 源代码...如何在客户端将html中的控件内容如table ,textarea , etc 转化为Excel,word中 .
- 有关单选框选中后校验的问题
- 求助一个用JavaExcelAPI操作EXECL的例子!
- 请教,如何解决对上传文档的内容的搜索的问题
Connection con=DriverManager.getConnection"jdbc:odbc:presidential_election","","");
查入语句是String template="INSERT INTO VOR (SSN,FIRSTNAME,"+"LASTNAME,COUNTYNUMBER) VALUES(?,?,?,?)";
请问jdbc:mysql://localhost/dbname?useUnicode=true&characterEncoding=gb2312
放在哪?是不是要先修改在放?
谢谢了!
经过转换就可以了.
public class CommonFunction {
/**
* 字符串替换,参数: parentStr为整个字符串,ch为需要被替换的字符,rep为替换后的字符串
* 2003-4-7
* by Shield
*/
public String replace(String parentStr,String ch,String rep)
{
int i = parentStr.indexOf(ch);
StringBuffer sb = new StringBuffer();
if (i == -1)
return parentStr;
sb.append(parentStr.substring(0,i) + rep);
if (i+ch.length() < parentStr.length())
sb.append(replace(parentStr.substring(i+ch.length(),parentStr.length()),ch,rep));
return sb.toString();
}}
public class encoding{
//中文转换
String result="";
public String uni2cn(String t){
try{
result = new String(t.getBytes("GBK"),"ISO8859_1");
}catch(Exception e){
result = "";
}
return result;
} public String cn2uni(String t){
try{
result = new String(t.getBytes("ISO8859_1"),"GBK");
}catch(Exception e){
result = "";
}
return result;
}
}
/**
* 去右空格函数
* 将字符串中右边的空格去掉
* @param str 指定要去掉右空格的字符串
* @return String,转换后的字符串
* @throws
* @完成日期:2003/05/06
*/
public static String rtrim(String str)
{
if ( str == null ) return null;
try
{
int i;
for (i = str.length() - 1; i >= 0; i--)
if ( str.charAt(i) != ' ' ) break;
return str.substring(0, i+1);
}
catch (Exception e)
{
return null;
}
}
public static String UnicodeToChinese(String s)
{
try
{
if(s==null||s.equals("")) return "";
String newstring=null;
newstring=new String(s.getBytes("ISO8859_1"),"gb2312");
return newstring;
}
catch(UnsupportedEncodingException e)
{
return s;
}
}
//chinese to unicode
public static String tochinese(String s)
{
try
{
if(s==null||s.equals("")) return "";
String newstring=null;
newstring=new String(s.getBytes("gb2312"),"ISO8859_1");
return newstring;
}
catch(UnsupportedEncodingException e)
{
return s;
}
}
//set htmlencoude
public String sethtml(String s)
{
s=s.replaceAll("<","<");
s=s.replaceAll(">","<");
s=s.replaceAll(" "," ");
s=s.replaceAll("\n","<br>");
s=s.replaceAll("'","'");
return s;
}
//get htmlencoude
public String gethtml(String s)
{
s=s.replaceAll("<","<");
s=s.replaceAll("<",">");
s=s.replaceAll(" "," ");
s=s.replaceAll("<br>","\n");
s=s.replaceAll("'","'");
return s;
}
<% request.setCharacterEncoding("GB2312");%> 就OK了,但是我只是在试验,真正的项目要用oracle,不知道同样的办法试不试用,到时遇到问题还请大家执教。谢谢大家的帮助。
String nick = new String((request.getParameter("newnick")).getBytes("ISO8859_1"),"GB2312");
boolean nickEmpty = false;
boolean nickInvalid = false;if (nick == null || nick.trim().equals(""))
{
nickEmpty = true;
} else if (nick.length()>16){
nickInvalid = true;
}
length取到的是字符数,怎样才能取到字节数呢?