Java MySQL结果字符串中的空格

Java MySQL结果字符串中的空格,java,mysql,Java,Mysql,为什么在运行此代码时: pst = con.prepareStatement("SELECT * from game"); rs = pst.executeQuery(); while(rs.next()){ System.out.println("id:"+rs.getString(1)); System.out.println("firstname: " + rs.getString(2)); System.out.println("lastname: " + rs.

为什么在运行此代码时:

pst = con.prepareStatement("SELECT * from game");
rs = pst.executeQuery();
while(rs.next()){
    System.out.println("id:"+rs.getString(1));
    System.out.println("firstname: " + rs.getString(2));
    System.out.println("lastname: " + rs.getString(3));
    System.out.println("--------------------------------------");
}
输出是(我不知道为什么我不能在这里复制txt,所以我使用了一个图像):


我的问题是空格。

临时解决方案是您可以在sql查询中使用Replace(colname,,'')

这可能(也可能不是)是数据的字符集与Java中使用的字符集不匹配。将Java程序连接到MySQL后,请立即尝试发出此MySQL命令:

 SET character_set_results = utf8;
如果这不起作用,你可以试试

 SET character_set_results = latin1;

(我猜。但对我来说,这听起来像是字符集问题。)

数据库中的字段有空格或存储良好?表中的数据有空格。请像注释所说的那样检查数据库。但是,作为临时解决方案,您可以使用
.replaceAll(“\\s+”,”)
删除空格no space@gudthing不起作用:\n如果我有一个带空格的2字,他们会删除它是的,我刚刚通过更改字符集解决了问题。但谢谢你:)