String password = "abcd";
String newPass = "\"" + password + "\"";
byte[] newUnicodePassword = newPass.getBytes("UTF-16LE"); //我要做的是把 newUnicodePassword 变成一个字附串,值等于原来那个 abcd
//我的实现方式如下:
String oldPass = new String(newUnicodePassword);
oldPass = oldPass.replaceAll("\\s+", "");
System.out.println(oldPass);
//上面的这种替换方法,输出的结果为 " a b c d " (其中\" 也是在输出结果中)
String newPass = "\"" + password + "\"";
byte[] newUnicodePassword = newPass.getBytes("UTF-16LE"); //我要做的是把 newUnicodePassword 变成一个字附串,值等于原来那个 abcd
//我的实现方式如下:
String oldPass = new String(newUnicodePassword);
oldPass = oldPass.replaceAll("\\s+", "");
System.out.println(oldPass);
//上面的这种替换方法,输出的结果为 " a b c d " (其中\" 也是在输出结果中)
String newPass = "\"" + password + "\"";
try {
byte[] newUnicodePassword = newPass.getBytes("UTF-8");
String oldPass = new String(newUnicodePassword);
oldPass = oldPass.replaceAll("\\s+", "");
System.out.println(oldPass);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
----这样会得到:“abcd”; String password = "abcd";
String newPass = password;
try {
byte[] newUnicodePassword = newPass.getBytes("UTF-8");
String oldPass = new String(newUnicodePassword);
oldPass = oldPass.replaceAll("\\s+", "");
System.out.println(oldPass);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
---------这样得到:abc.
1.转换时,前后加上引号,然后用UTF-16编码
2.逆转换时,用UTF-16构造字符串,然后去掉前后的引号
String pass = new String(newUnicodePassword ,"UTF-16LE");
pass = pass.substring(1,s.length-1);