Excel导入MySql导致提取数据形成Json转义错误的解决

在做项目的时候,遇到这样一个问题:

系统采用Mysql做数据库,数据内容直接使用用户的Excel导入。

然后采用Jqery通过后台的ashx文件提取Json数据,但是问题出现,出现了获取数据正常,文字显示的内容也正常,就是Json的格式不对(经过跟踪发现进行转义时出现了错误),到底是什么原因导致的呢?

百思不得其解,我尝试了一下用实际字符串代替从数据库中提取

String.Format("""id"":""{0}"",""text"":""{1}""", Rs("编号"), Rs("名称"))

改成:

String.Format("""id"":""{0}"",""text"":""{1}""", “12345”,“测试测试”)

结果竟然顺利通过测试,前台获取的Json一切正常。由此可知问题出在数据库字段的内容上

于是我使用工具将数据库的中的记录导出为sql文件,结果发现几乎每一个字段值中都包含了特殊符号,所以才出现看不到去不合法的问题

INSERT INTO 单位 VALUES ('3', '3004', '白沙中学\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0', '查看', '')

INSERT INTO 单位 VALUES ('4', '3330', '半程中学\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0', '查看', '');

 

由此可知,在数据转换时一定要注意特殊符号的清理

在进行程序调试时,一个思路不行,快速地换个思路往往可以解决问题。

 

 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值