我正在写一个有趣的java小项目,在那里我想获得whatsapp聊天的统计数据。在本例中,我希望获得最常用的表情符号作为这些统计数据之一。
这些聊天记录如下所示,是一个常规的txt文件:
朋友a:我也要参加聚会了🥳🥳🥳
29-04-2021 18:50-朋友b:我也很沮丧🥳
29-04-2021 18:52-朋友c:我也要参加聚会
29-04-2021 18:52-朋友a:哈哈哈
朋友甲:好的,我会的😂😂
29-04-2021 18:52-朋友丁:我看看会怎么样♡♡♡
朋友:现在我感觉很糟糕😅
我使用这段代码来解析文本文件
try(BufferedReader reader = Files.newBufferedReader(filePath)) {
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
然而,当我使用这段代码时,所有表情符号都会被一个问号(“?”)或两个问号(“?”)所取代。我以前在python中做过,没有任何问题。
我也曾尝试将打印流的编码设置为utf-8,但没有成功。
使用如下所示的inputstreamreader具有相同的结果。
try (BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(String.valueOf(filePath)), StandardCharsets.UTF_8))){
String line;
while ((line = reader.readLine()) != null){
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
我觉得我错过了一些非常简单的东西,但我无法理解。
暂无答案!
目前还没有任何答案,快来回答吧!