首页 > 编程知识 正文

通过json生成结构体,格式化字符串漏洞

时间:2023-05-03 17:45:59 阅读:126453 作者:3031

在开发中,经常需要格式化JSON字符串以便于阅读,否则整个字符串会变成长字符串,难以阅读。 格式化的JSON字符串换行、层次清晰,易于阅读。 本节介绍了delphi如何设置JSON字符串的格式。 此函数支持JSON数组的格式设置。

需要用于官方的uWriters单元,可以直接0点下载。 https://download.csdn.net/download/sensor _ Wu/21106404

例如JSON字符串:{“name”:“sensor”,“add”:“China Shenzhen”,“age”:50,“color”:“red”}

格式化后: {

" name " : " sensor "、

“add”:“China Shenzhen”

“age”:50、

" color " : " red "

}

步骤如下。

{2021-08-16 sensor经过测试,可以格式化TJSONObject和TJSONArray等大数据测试,没有内存泄漏,并且可以格式化速度块}单元格式 接口uses uwriters,//为https://download.csdn.net/download/sensor _ Wu/21106404 system.sysutils,system.classsoad 需要//JSONStr :格式的字符串//withTAB :指示是否需要整体缩进,并主要指示格式化字符串有缩进,以便在写日志时看起来很漂亮。 包含默认缩进//结果:格式化字符串。 函数格式_ JSON (JSON str :字符串; with tab : boolean=true (:字符串; implementationfunctionformat _ JSON (JSON str :字符串; with tab : boolean=true (:字符串; varjsonwriter 3360 tjsonstringwriter; JSON reader : tjsonstringreader; jv : TJSONValue; begin //1.首先判断JSONStr是否为合法的JSON字符串,否则直接输入JV :=tjsonobject.parsejsonvalue (JSON str ) as TJSONValue; ifJV=nilthenexit(JSONstr ); JSON reader :=tjsonstringreader.create (JSON str ); Jon writer :=tjsonstringwriter.create; //这一句一定有,进行格式化的JSON writer.formatting :=tjsonformatting.indented; //system.JSON.typestryjsonwriter.writetoken (JSON reader ); result :=JSON writer.tostring; //ifwithtabthenbeginresult 3360=如果需要缩进result.replace (# 13 # 10,#13#10#9); Result :=#9 Result; 结束; finally JsonWriter.Free; JsonReader.Free; 结束; 结束; 标记为end.2021-08-16传感器

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。