是否可以丢弃无法解析的项目并继续使用serde_json进行解析?

问题描述

我有一个非常大的JSON文件。其中大多数是有效的JSON数据,但部分无效。以下是我的案例的简化:

[
    "this is valid: \ud835\udc47","this is invalid: \ud835",]

第一项有效并且将被成功解析,但是当尝试第二项时,反序列化将失败,因为UTF-8根本不允许\ud835字符,而UTF-16却不允许一个孤独的\ud835字符,因为它后面必须跟另一个十六进制转义符。

当使用使用Python的内置JSON反序列化程序并将数据保存到数据库的HTTP服务器时,会发生此问题。 Python的反序列化器接受了一个单独的“ \ ud835”字符,该字符无效的UTF-8或UTF-16。现在,当我们要将这个应用程序和数据库迁移到带有Serde的Rust时,它将捕获到这个无效的UTF-8 / 16字符串。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...