开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 278|回复: 9
收起左侧

[已解决] unicode内容如何保存/cha询数据库问题

 关闭 [复制链接]
结帖率:100% (40/40)
发表于 2025-5-2 16:01:34 | 显示全部楼层 |阅读模式   山东省临沂市
13精币
请问各位大佬,易语言保存数据到sqlite,如何解决因unicode不支持而导致无法完整添加的问题。

JSON数据:[{"issue":{"answer":"B","issuse":"与苯二氮䓬类相比,非苯二氮䓬类在抗惊厥、抗焦虑及肌肉松弛效应更弱,在改善睡眠持续时间和睡眠质量的同时,还缩短了睡眠潜伏期和减少了觉醒次数,属于该类的镇静催眠药是","textAnalysis":"本题考查镇静与催眠药的分类与代表药品。用于治疗失眠的非苯二氮䓬类药物包括扎来普隆、唑吡坦、佐匹克隆。故本题的正确答案为B。地西泮属于苯二氮䓬类。水合氯醛属于醛类。雷美替胺属于褪黑素受体激动剂。苯巴比妥属于巴比妥类。","option":[{"name":"A","value":"地西泮"},{"name":"B","value":"唑吡坦"},{"name":"C","value":"水合氯醛"}]},"correctCount":17472,"issuesType":"单项选择题"},{"issue":{"answer":"E","issuse":"关于苯二氮䓬类镇静催眠药的说法,不正确的是","textAnalysis":"原发性失眠首选非苯二氮䓬类药物,为改善起始睡眠(难以入睡)和维持睡眠质量(夜间觉醒或早间觉醒过早),可选唑吡坦、佐匹克隆。故本题的正确答案为E。对焦虑型、夜间醒来次数较多或早醒者可选用氟西泮。","option":[{"name":"A","value":"老年患者对苯二氮䓬类药物较敏感,易产生“宿醉”现象"},{"name":"B","value":"地西泮和夸西泮属于长效苯二氮䓬类药物"},{"name":"C","value":"可促进中枢神经递质γ-氨基丁酸(GABA)的释放或突触的传递"}]},"correctCount":16649,"issuesType":"单项选择题"}]

我现在是这样处理的:
将返回的JSON数据,到文本,JOSN解析,取值,保存到数据库。但会出现unicode格式文本:䓬等文字,会变成?


之前我发求助帖,大佬们说,可以将返回数据直接base64编码成文本直接存入数据库,然后前端js解析出来。确实,可以解决保存问题。
但是sqlite数据库里面的数据,没有可读性了。json数据全量base64保存而不是取指定值保存,一些无用数据也会保存。

我现在的需求是:
1.如何将接口返回的json数据,只将unicode格式文本进行编码保存,其他汉字正常保存,保留数据库的可读性。
如果想要彻底解决unicode导致的数据丢失问题,是否



补充内容 (2025-5-2 16:02):
有更合理的方案,请大佬们指点。

最佳答案

查看完整内容

[e=0].版本 2 .程序集 程序集1 .程序集变量 json, zyJsonDocument .程序集变量 sqlite, zySqlite数据库类 .子程序 _启动子程序, 整数型, , 本子程序在程序启动后最先执行 .局部变量 uText, 字节集 ' jsonData = 读入文件 (“dataU8.json”) ' tW () ' 测试json解析 () ' 创建数据库 () ' uText = 测试json解析 () db_打开 () db_创建数据库 () ' db_插入数据 () db_cha询数据 () 返回 (0) ' 可以根据您的需要返回任意数 ...

回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳
结帖率:43% (3/7)

签到天数: 4 天

发表于 2025-5-2 16:01:35 | 显示全部楼层   江西省九江市
QQ截图20250503135741.png
zysqlite.zip (578.02 KB, 下载次数: 2)

评分

参与人数 1荣誉 +1 收起 理由
笨潴 + 1 热心帮助他人,荣誉+1,希望继续努力(*^__^*) 嘻嘻!

查看全部评分

回复

使用道具 举报

结帖率:82% (76/93)

签到天数: 3 天

发表于 2025-5-2 19:16:16 | 显示全部楼层   广东省东莞市
直接字节集储存即可,转换utf8文本方式储存也可以,以下模块能实现

sqlite3.30.1 数据库模块+支持库(彻底解决多线程死锁问题)
https://bbs.125.la/forum.php?mod=viewthread&tid=14512756
(出处: 精易论坛)
回复

使用道具 举报

结帖率:100% (40/40)

签到天数: 1 天

 楼主| 发表于 2025-5-3 09:25:46 | 显示全部楼层   山东省临沂市
emodiyu 发表于 2025-5-2 19:16
直接字节集储存即可,转换utf8文本方式储存也可以,以下模块能实现

sqlite3.30.1 数据库模块+支持库(彻底 ...

转换utf8文本方式储存,unicode文本就变成?了。
回复

使用道具 举报

结帖率:93% (42/45)

签到天数: 7 天

发表于 2025-5-3 11:56:46 | 显示全部楼层   广东省汕头市
换个语言吧, 易语言适合做前端的内容, 不适合做后端的内容.

点评

易语言做前端也只能做不复杂的前端   广东省汕头市  发表于 2025-5-3 11:57
回复

使用道具 举报

结帖率:43% (3/7)

签到天数: 4 天

发表于 2025-5-3 14:13:05 | 显示全部楼层   江西省九江市
zysqlite.zip (679.73 KB, 下载次数: 2)
回复

使用道具 举报

结帖率:100% (40/40)

签到天数: 1 天

 楼主| 发表于 2025-5-3 16:38:39 | 显示全部楼层   山东省临沂市

谢谢大佬,牛逼。我是用E2EE需要在前端网页显示。这个unicode保存到数据库没问题了,怎么通过接口返回给前端?之前不考虑unicode的时候,我是cha询出来直接返回存取列表json给前端。
回复

使用道具 举报

结帖率:83% (10/12)

签到天数: 1 天

发表于 2025-5-3 18:18:13 | 显示全部楼层   江苏省苏州市
base64编码呗
回复

使用道具 举报

结帖率:100% (40/40)

签到天数: 1 天

 楼主| 发表于 2025-5-9 14:55:41 | 显示全部楼层   山东省临沂市
已解决,谢谢各位大佬。
使用E2EE支持库,即可完美解决unicode问题。可以以文本形式添加到数据库,也可以以文本形式展示到前端。
具体实现,见图,贼简单。
保存写入.png
返回给前端.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表