用java实现php的ord和chr函数

2,755次阅读

共计 340 个字符,预计需要花费 1 分钟才能阅读完成。

在 Java 中,char 是 UTF-16 代码单元。将 UTF-16 转换为 UTF- 8 不仅仅是 0xFF,例如 UTF-16 中的 01FF 是 UTF- 8 中的 C7 BF,所以 PHP ord()应该给出 0xC7(199),而 0x01FF 和 0xFF 是 255,  实现 ord 函数:

//& 0xff 针对 utf- 8 编码 
public static int ord(String s) {return s.length() > 0 ? (s.getBytes(StandardCharsets.UTF_8)[0] & 0xff) : 0;
}
public static int ord(char c) {return c < 0x80 ? c : ord(Character.toString(c))
}

chr 函数实现:

Character.toString ((char) i);

正文完
 
Blood.Cold
版权声明:本站原创文章,由 Blood.Cold 2019-06-03发表,共计340字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。