gpt4 book ai didi

java - 如何在android中解码json emoji

转载 作者:太空狗 更新时间:2023-10-29 13:10:26 27 4
gpt4 key购买 nike

我用编译 'org.apache.commons:commons-lang3:3.4' 没用

我的 json 表情符号是这样的:

|ud83d|ude00                      
|ud83d|ude01
|ud83d|ude02
|ud83d|ude03
|ud83d|ude04
|ud83d|ude05
|ud83d|ude06
|ud83d|ude09
|ud83d|ude0a
|ud83d|ude0b
|ud83d|ude0e
|ud83d|ude0d
|ud83d|ude18
|ud83d|ude17

我找不到任何方法。我刚找到 >> https://www.phpclasses.org/browse/file/67374.html但我不想通过代码转换成这种格式

最佳答案

正如评论中所建议的,您应该使用优秀的 emoji-java图书馆。首先添加所需的依赖项 - 例如,Maven 看起来像:

    <dependency>
<groupId>com.vdurmont</groupId>
<artifactId>emoji-java</artifactId>
<version>3.1.3</version>
</dependency>

然后,您应该更改 json,因为表情符号使用反斜杠 (\) 而不是竖线 (|)。

之后你可以像这样解析文件(Java 8):

List<String> collect = Files.lines(Paths.get("filePath"), StandardCharsets.UTF_8)
.map(StringEscapeUtils::unescapeJava)
.collect(Collectors.toList());
collect.forEach(s -> System.out.println(EmojiManager.getByUnicode(s).getUnicode()));

Java 7:

try (BufferedReader br = new BufferedReader(new FileReader("C:\\untitled\\src\\main\\resources\\emoji.txt"))) {

String line;
while ((line = br.readLine()) != null) {
System.out.println(EmojiManager.getByUnicode(StringEscapeUtils.unescapeJava(line)).getUnicode());
}

} catch (IOException e) {
// error handling
}

请注意,您应该使用 StringEscapeUtils.unescapeJava以便从文件中检索正确的值。

关于java - 如何在android中解码json emoji,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41870588/

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