我有一个程序可以将一些信息序列化为 JSON 字符串,然后将该字符串存储在 MySQL 数据库中。然后,当再次需要信息时,它会从数据库中加载,并且应该能够加载到 JSON 对象中,但 MySQL 似乎正在删除一些转义字符并搞乱了该过程。
这是程序完成加载后字符串的图片...标题为“result”的字符串是字符串预期的存储方式,但出于某种原因,它被存储为 stored_string 的版本...
我正在使用 jsoncpp 和 MySQL5.7。下面的数据库和 JSON 文件只是我制作的包装类。
啊……谷歌搜索了一段时间后,我发现了一些信息,这些信息引导我找到一个名为 mysql_real_escape_string 的函数。这应该在我们将字符串插入数据库的任何时候调用(我猜是技术上的)......它基本上转义字符,因此它们按原样存储在查询中。这是我缺少的步骤。
最佳答案
在谷歌搜索了一段时间后,我发现了一些信息,这些信息引导我找到一个名为 mysql_real_escape_string 的函数。
这应该在我们将字符串插入数据库时调用(我猜是技术上的)......它基本上转义字符,因此它们按原样存储在查询中。这是我缺少的步骤。
关于c++ - MySQL 删除 JSON 字符串中的转义字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52600937/