java string乱码问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java string乱码问题相关的知识,希望对你有一定的参考价值。
String sql1= " '"+id+"'";
刚刚不小心点了另一个最佳答案,还是没解决,大神给力啊
id是char数组类型,值为3703731197270270
String sql= " '"+id+"'";
sql值为 '[C@1b8ee96
因为要使用mysql,所以数据库的值是错的
有大神说是输出的object类型,怎么解决?
看了你的描述:
转换后成 '[C@1b8ee96'
这个不是乱码,是Java的hashCode值,即对象的内存地址,产生原因是:
String sql1= " '"+id+"'"; 做字符串拼接时,id是一个对象
java在做字符串拼接时,会调用toString方法,而toString默认返回的是hashcode
id的是个数组,什么类型的,包括String sql= " '"+id+"'"; 你想拼成一个怎样的sql语句
int [] a = 1,2,3,4;
System.out.println(Arrays.toString(a)); // 数组变字符串
供你参考,因为要拼sql需要额外处理
char[] id = ss.toCharArray();
String idStr = Arrays.toString(id);
idStr = idStr.substring(1).substring(0, idStr.length() - 2);
String sql = " '" + idStr + "'";
System.out.println(sql);
String sql1 = "insert into weibo value ('" +sql +"')"
System.out.println(sql1);
看看合不合适
选择GBK或者UTF-8,试一试
希望采纳!
追问还是那样。。
我准备用mysql,
语句String sql1= " '"+id+"'";
id原来是
3703731197270270
转换后成 '[C@1b8ee96',
刚刚有大神说是变成了object类型,不知道怎么解决,数据库也是乱码
编写java web的程序,不可避免都要处理编码问题,最常见的问题就是中文乱码
大概的思路就是重新编码为gbk或者gb2312,分两种情况
一是get和post形式
二是AJax 形式
第一种:GET和POST,取决于你的页面编码,如果你的页面编码为iso8859_1
使用:String str= new String(req.getParameter("str").toString().getBytes("iso8859_1"), "GBK");
或者 String str= new String(req.getParameter("str").toString().getBytes("iso8859_1"), "GB2312");
但是,这里要注意,必须保证你的页面编码也是iso8859_1的,因为,上面的代码的意思是先将你的字符串变为iso8859_1字节流,
然后再转化为GBK编码,如果你页面传过来的编码是utf-8,那么按照上面的方法就会出现:???乱码
你页面是utf-8的,就要使用如下编码:
String str= new String(req.getParameter("str").toString().getBytes("utf-8"), "GBK");
或者 String str= new String(req.getParameter("str").toString().getBytes("utf-8"), "GB2312");
总之get post 原则很简单,页面什么编码就转化什么字节流转化编码
java URL请求乱码
我在电脑浏览器上输入后,在数据库能正常保存中文,但我在android的程序中同样用此字符串,数据库中就乱码,URL url = new URL("http://" + addrss + data); data与浏览器中一样,请大侠帮助分析一下,谢谢!!!
参考技术A 当你在url地址以get方式传输数据时须要用Stringencode(String s, String enc)将汉字进行编码后传输,再在后台用decode(String s, String enc)解码回来就OK了。这两个方法都在java.net包下。看看API就知道了。 参考技术B URL在传输过程中,最好是urlecode一下 参考技术C 对请求参数的value做URLEncode.encode编码设置,或者服务端需要解码URLDecoder.decode本回答被提问者采纳
以上是关于java string乱码问题的主要内容,如果未能解决你的问题,请参考以下文章