gpt4 book ai didi

java - 任何字符都可以用 UTF-16 编码(使用 Java 8)

转载 作者:太空宇宙 更新时间:2023-11-04 06:18:19 27 4
gpt4 key购买 nike

任何字符都可以用 UTF-16 编码(使用 java)吗?

我认为可以,但我的代码编码为

CharsetEncoder encoder = Charset.forName("UTF-16LE").newEncoder();
ByteBuffer bb = encoder.encode(CharBuffer.wrap((String) value + '\0'));

抛出了一个CharacterCodingException

不幸的是,由于这只发生在客户身上,而不是我本人,所以我没有有关违规角色的详细信息。

最佳答案

char 的值可能不是有效的 UTF-16 序列。例如:

    CharsetEncoder encoder = Charset.forName("UTF-16LE").newEncoder();
ByteBuffer bb = encoder.encode(CharBuffer.wrap("\uDFFF"));

这段代码会抛出异常。 U+DFFF 是 unpaired surrogate .

关于java - 任何字符都可以用 UTF-16 编码(使用 Java 8),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27780246/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com