HelloNative2AsciiReverse

■コード

package hello;

public class HelloDecode {

static String decode(String s) { StringBuffer sb = new StringBuffer(); StringBuffer buffer = new StringBuffer(4); int status = 0; // <for_each_chars> for (int n = 0; n < s.length(); n++) { char c = s.charAt(n); if (c == '\\') { buffer.append(c); status = 1; } else if (c == 'u') { buffer.append(c); status = 2; } else if ("0123456789ABCDEFabcdef".indexOf(c) != -1) { if (status == 0 || status == 1) { status = 0; } else if (status == 2) { buffer.append(c); status = 3; } else if (status == 3) { buffer.append(c); status = 4; } else if (status == 4) { buffer.append(c); status = 5; } else if (status == 5) { buffer.append(c); char ccc = (char) Integer.parseInt(buffer.toString() .substring(2), 16); buffer = new StringBuffer(4); sb.append(ccc); } } else { status = 0; sb.append(buffer); buffer = new StringBuffer(4); } if (status == 0) { sb.append(c); } } // </for_each_chars> if (buffer.length() > 0) { sb.append(buffer); } return sb.toString(); }

}

tags

---

native2ascii reverse 関数

native2ascii reverse メソッド

native2ascii reverse 変換