14 个解决方案
#1
不同编码下的字符串getBytes会不同,因此new出来的String也会不同,除非统一编码方式
#2
都把它转变成一种编码格式试试看不行吗?比如都把它转成gb2312
#3
统一编码
#4
用文本打开这个文件,在另存为里面检查编码格式,使其编码格式一样
#5
还是不行,主要代码我粘在下面:
<script>
function selectValue2(){
var answer=window.showModalDialog("transCorpCheck.htm",window.self,"dialogWidth:600px;dialogHeight:400px:center:yes");
var Ownerarray =answer.split("?");
if (document.thisform.transCorp.value != Ownerarray[0] (//主要是这句比较的语句,两个长度显示不同,有点郁闷)&& document.thisform.transCorp.value !="" ) {
document.thisform.Vehicle.value=document.thisform.Vehicle.value+"|"+ Ownerarray[0];
document.thisform.transCorp.value=document.thisform.transCorp.value +"|" +Ownerarray[1];
document.thisform.num.value=document.thisform.Vehicle.value.split('|').length
}else if (document.thisform.transCorp.value !="") {
document.thisform.Vehicle.value=document.thisform.Vehicle.value+"|"+ Ownerarray[0];
document.thisform.num.value= document.thisform.Vehicle.value.split('|').length
}
}
</script>
<script>
function selectValue2(){
var answer=window.showModalDialog("transCorpCheck.htm",window.self,"dialogWidth:600px;dialogHeight:400px:center:yes");
var Ownerarray =answer.split("?");
if (document.thisform.transCorp.value != Ownerarray[0] (//主要是这句比较的语句,两个长度显示不同,有点郁闷)&& document.thisform.transCorp.value !="" ) {
document.thisform.Vehicle.value=document.thisform.Vehicle.value+"|"+ Ownerarray[0];
document.thisform.transCorp.value=document.thisform.transCorp.value +"|" +Ownerarray[1];
document.thisform.num.value=document.thisform.Vehicle.value.split('|').length
}else if (document.thisform.transCorp.value !="") {
document.thisform.Vehicle.value=document.thisform.Vehicle.value+"|"+ Ownerarray[0];
document.thisform.num.value= document.thisform.Vehicle.value.split('|').length
}
}
</script>
#6
好象不是整个网页编码的问题,有可能是哪个赋值过程中出现什么变化,对Jsp不熟悉,请大家帮忙找找原因,多谢,正在郁闷中……
#7
字符编码不一样,长度就不一样
UTF-8一个字符占用的字节数和gbk一个字符占用的字节数是不同的
UTF-8一个字符占用的字节数和gbk一个字符占用的字节数是不同的
#8
同意楼上
#9
那怎么办呢,我重新存储过网页,问题依旧哦,是不是JSP里有什么专门把字符串转换编码的函数呢?
#10
这问题有点郁闷,我不知道从哪里下手,编码不一样,长度就不一样,这我想得通,可具体要怎么做呢?或许并不是网页的问题,因为我另存过,都保持一样的编码,页面里面的charset=gb2312也都设置过了,真郁闷……
#11
你再看看你的tomcat的语言设置
在server.xml文件中 修改
<Connector
port="80" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true" URIEncoding="gb2312" />
加上URIEncoding="gb2312" 试一下
在server.xml文件中 修改
<Connector
port="80" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true" URIEncoding="gb2312" />
加上URIEncoding="gb2312" 试一下
#12
你页面里面写脚本所以不予解答!!
#13
UTF-8 占三个字节
GBK 占一个字节
GBK 占一个字节
#14
GBK 占两个字节
上面写错了
上面写错了
#1
不同编码下的字符串getBytes会不同,因此new出来的String也会不同,除非统一编码方式
#2
都把它转变成一种编码格式试试看不行吗?比如都把它转成gb2312
#3
统一编码
#4
用文本打开这个文件,在另存为里面检查编码格式,使其编码格式一样
#5
还是不行,主要代码我粘在下面:
<script>
function selectValue2(){
var answer=window.showModalDialog("transCorpCheck.htm",window.self,"dialogWidth:600px;dialogHeight:400px:center:yes");
var Ownerarray =answer.split("?");
if (document.thisform.transCorp.value != Ownerarray[0] (//主要是这句比较的语句,两个长度显示不同,有点郁闷)&& document.thisform.transCorp.value !="" ) {
document.thisform.Vehicle.value=document.thisform.Vehicle.value+"|"+ Ownerarray[0];
document.thisform.transCorp.value=document.thisform.transCorp.value +"|" +Ownerarray[1];
document.thisform.num.value=document.thisform.Vehicle.value.split('|').length
}else if (document.thisform.transCorp.value !="") {
document.thisform.Vehicle.value=document.thisform.Vehicle.value+"|"+ Ownerarray[0];
document.thisform.num.value= document.thisform.Vehicle.value.split('|').length
}
}
</script>
<script>
function selectValue2(){
var answer=window.showModalDialog("transCorpCheck.htm",window.self,"dialogWidth:600px;dialogHeight:400px:center:yes");
var Ownerarray =answer.split("?");
if (document.thisform.transCorp.value != Ownerarray[0] (//主要是这句比较的语句,两个长度显示不同,有点郁闷)&& document.thisform.transCorp.value !="" ) {
document.thisform.Vehicle.value=document.thisform.Vehicle.value+"|"+ Ownerarray[0];
document.thisform.transCorp.value=document.thisform.transCorp.value +"|" +Ownerarray[1];
document.thisform.num.value=document.thisform.Vehicle.value.split('|').length
}else if (document.thisform.transCorp.value !="") {
document.thisform.Vehicle.value=document.thisform.Vehicle.value+"|"+ Ownerarray[0];
document.thisform.num.value= document.thisform.Vehicle.value.split('|').length
}
}
</script>
#6
好象不是整个网页编码的问题,有可能是哪个赋值过程中出现什么变化,对Jsp不熟悉,请大家帮忙找找原因,多谢,正在郁闷中……
#7
字符编码不一样,长度就不一样
UTF-8一个字符占用的字节数和gbk一个字符占用的字节数是不同的
UTF-8一个字符占用的字节数和gbk一个字符占用的字节数是不同的
#8
同意楼上
#9
那怎么办呢,我重新存储过网页,问题依旧哦,是不是JSP里有什么专门把字符串转换编码的函数呢?
#10
这问题有点郁闷,我不知道从哪里下手,编码不一样,长度就不一样,这我想得通,可具体要怎么做呢?或许并不是网页的问题,因为我另存过,都保持一样的编码,页面里面的charset=gb2312也都设置过了,真郁闷……
#11
你再看看你的tomcat的语言设置
在server.xml文件中 修改
<Connector
port="80" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true" URIEncoding="gb2312" />
加上URIEncoding="gb2312" 试一下
在server.xml文件中 修改
<Connector
port="80" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true" URIEncoding="gb2312" />
加上URIEncoding="gb2312" 试一下
#12
你页面里面写脚本所以不予解答!!
#13
UTF-8 占三个字节
GBK 占一个字节
GBK 占一个字节
#14
GBK 占两个字节
上面写错了
上面写错了