gpt4 book ai didi

java - 在 Java 中处理字符串时如何避免 Twitter 表情符号字符

转载 作者:搜寻专家 更新时间:2023-11-01 03:41:59 24 4
gpt4 key购买 nike

我正在处理来自 Twitter 的推文并将它们存储在数据库 (MySQL) 中。

我的进程运行完美,但有时会出现这样的错误:

2012-08-31 08:11:23,303 WARN org.hibernate.engine.jdbc.spi.SqlExceptionHelper  - SQL Error: 1366, SQLState: HY000
2012-08-31 08:11:23,304 ERROR org.hibernate.engine.jdbc.spi.SqlExceptionHelper - Incorrect string value: '\xF0\x9F\x98\x9D #...' for column 'twe_text' at row 1

在我的日志中查找有问题的推文时,我发现了以下推文:

 2012-08-31 08:11:22,971 INFO com.myapp.TweetLoaderJob  - Text for tweet 241175722096480256: RT @totallytoyosi_: My go
odies, my goodies, not your goodies <U+1F61D> #m&ms #sweeties #goodies #food @ The Ritzy Cinema Café, Brixton htt ...

最后,看看到底是什么,我发现这是推特发的表情as-is

我调试过,只查找这条特定的推文,而我的 eclipse 似乎无法识别这个编码字符。那么问题来了,我该如何处理这个异常呢?我寻找配置我的 MySQL 数据库,但我无法更改编码(这是一项要求),所以我的选择是避免管理这种推文或抑制这种复杂的字符。

但是,如果 Java 不识别它,该怎么办呢?

最佳答案

您可以过滤字符串并删除不需要的部分(使用像 <U+[^>]+> 这样的简单正则表达式),然后再将它们存储到数据库中。

关于java - 在 Java 中处理字符串时如何避免 Twitter 表情符号字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12214163/

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