Guest User

Untitled

a guest
Nov 21st, 2018
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.00 KB | None | 0 0
  1. String str = "a吉野屋𠮷野\r\n屋ア緣イ?";
  2. // byte[] bytes = str.getBytes("Windows-31j");
  3. char alt = '□';
  4.  
  5. final String charset = "Windows-31j";
  6.  
  7. String filteredStr = filterLowSurrogate(str);
  8. String translatedStr = new String(str.getBytes(charset), Charset.forName(charset));
  9. StringBuilder sb = new StringBuilder(filteredStr.length());
  10. for (int i = 0; i < filteredStr.length(); i++) {
  11. char c1 = filteredStr.charAt(i);
  12. char c2 = translatedStr.charAt(i);
  13.  
  14. if (c1 == c2) {
  15. sb.append(c1);
  16. } else {
  17. sb.append(alt);
  18. }
  19.  
  20. String x1 = Integer.toHexString(c1).toUpperCase();
  21. String x2 = Integer.toHexString(c2).toUpperCase();
  22.  
  23. System.out.println(x1 + ":" + x2);
  24. }
  25.  
  26. String str2 = sb.toString();
  27. System.out.println("---");
  28. System.out.println(str);
  29. System.out.println("---");
  30. System.out.println(filteredStr);
  31. System.out.println("---");
  32. System.out.println(str2);
  33. System.out.println("---");
  34. System.out.println(new String(str2.getBytes(charset), Charset.forName(charset)));
Add Comment
Please, Sign In to add comment