JAVA导Excel到Mysql传参中文乱码
问题是这样:我把Excel里面一列中文查找出来放在数组里面,然后遍历数组,去数据库中查其对应的字典值
SQL语句:SELECT T.NID,T.NAME FROM TRADE_DIC_TYPE T WHERE T.NAME LIKE ?
然后 ps.setString(Arr.get[i]); //Arr.get[i]是中文
然后再后台打印出来的sql语句里面“?”部分是乱码
请问这个怎么解决? --------------------编程问答-------------------- ps.setString(Arr.get[i]);这句应该是ps.setString(1,Arr.get[i]); --------------------编程问答-------------------- 你检查下从excel获取到的中文是不是已经乱码了。
获取的时候注意编码正确 --------------------编程问答-------------------- 查一下 java 中文乱码,转一下编码格式就没问题了。 --------------------编程问答-------------------- ps.setString(Arr.get[i])改成 ps.setString(1,"%"+Arr.get[i]+"%")试试 --------------------编程问答--------------------
插到数组的时候不是乱码,我输出来看过了 --------------------编程问答-------------------- 用urlencoding试试! --------------------编程问答-------------------- 把每一次操作中文前后都输出来看下 哪里出现乱码 再有针对的解决 --------------------编程问答-------------------- 数据库和你倒出来的数据格式不相同,把两个格式都设置成UTF-8试试看 --------------------编程问答-------------------- 问题已经解决
在127.0.0.1:3306/tsst
地址后面加字符集就可以了
补充:Java , Java SE