如何在对java进行一些处理后将编码后的字符串写入数据库

时间:2015-10-27 03:46:28

标签: java mysql database encoding character-encoding

我想打印\ u0070 \ u0075 \ u0062作为此程序的输出,我该如何用Java实现。

public class ankit {
    public static void main(String[]args){
        String s="\u0070\u0075\u0062";
        System.out.println(s);
    }
}
它给了我" pub"作为输出

实际上我将它发送到数据库,如果有新行字符的unicode" \ n"我对mySQL的批量导入不合适。所以我想在写入mysql

时将字符串存储为unicode编码

我不想将unicode转换为" \ n"在写入db

时写入实际换行符

2 个答案:

答案 0 :(得分:2)

你可以这样做:

  String s="\\u0070\\u0075\\u0062";

比你可以得到ans

答案 1 :(得分:1)

这可以帮助你解决问题:)

public class Test {
  public static void main(String[] args) {
    String s = "\u0070\u0075\u0062";
    StringBuffer sbuffer = new StringBuffer();
    for (int i = 0; i < s.length(); i++) {
      char ch = s.charAt(i);
      if (ch >= '\u0000' && ch <= '\u01FF') {
        String ss = Integer.toHexString(ch);
        sbuffer.append("\\\\u");
        for (int k = 0; k < 4 - ss.length(); k++) {
          sbuffer.append('0');
        }
        sbuffer.append(ss.toUpperCase());
      } else {
        sbuffer.append(ch);
      }
    }
    System.out.println(sbuffer);
  }
}

来源:http://arpan-khandelwal-tech.blogspot.in/2008/08/this-article-is-related-to-escaping-of.html