一个关于String的问题
代码如下:
byte[] buf=new byte[1024];
String userName="编程";
buf=userName.getBytes();
String a=new String(buf,0,userName.length());
JOptionPane.showMessageDialog(null,a);
显示的为"编"字..如果userName为"java" 则可正常显示;
如果代码改为
byte[] buf=new byte[1024];
String userName="编程";
buf=userName.getBytes();
JOptionPane.showMessageDialog(null,buf.toString);
则显示为若干字符.
想请教下各位大虾,为什么String转换为Byte[]后再转换回来会显示为乱码..
如果userName为中文与字母混合,如何控制userName.length(),从而使程序正常显示
userName...小弟在这先谢了.