Delphi DataSet转JSon(字符串拼接json)

Delphi中将TDataSet转换为JSon字符串。

function Test.DataSetToJson(ADataset: TDataSet): string;
varARecord: string;AField: TField;i: integer;
beginResult := '';with ADataset dobegin// 如果dataset是空就退出if IsEmpty thenExit;//初始化ARecordARecord := '';//定义开头Result := '[';//循环行while not Eof dobegin//循环列for i := 0 to FieldCount - 1 dobegin//取列值  FieldName列名  Text列值AField := Fields[i];if ARecord = '' thenbeginARecord := '{"' + AField.FieldName + '":"' + AField.Text + '"'endelsebeginARecord := ARecord + ',"' + AField.FieldName + '":"' + AField.Text + '"';end;//判断是否到最后一列if i = FieldCount - 1 thenbeginARecord := ARecord + '}';//判断result是否第一次填充if Result = '[' thenbeginResult := Result + ARecordendelsebeginResult := Result + ',' + ARecord;end;//列结束,重置 ARecordARecord := '';end;end;Next;end;end;//] 结尾Result := Result + ']';
end;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/767735.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

图论基础|841.钥匙和房间、463. 岛屿的周长

目录 841.钥匙和房间 思路:本题是一个有向图搜索全路径的问题。 只能用深搜(DFS)或者广搜(BFS)来搜。 463. 岛屿的周长 841.钥匙和房间 力扣题目链接 (opens new window) 有 N 个房间,开始时你位于 0…

git 常用命令-以及命令解析

一、Push操作 1.先git init 标识仓库地址2.git add xxx git add . 代表添加当前目录所有文件代表标识提交的文件3.git commit -m xxxx 代表git提交后需要说的什么话4.git remote add origin xxxx xxxx替换为github仓库的ssh地址5.git push origin xxx xxx为分支名称如果有报错可…

TCP重传机制详解——03DSACK

TCP重传机制详解——03DSACK 什么是DSACK DSACK是指"Duplicate Selective Acknowledgment",即重复选择性确认。在TCP通信中,DSACK机制允许接收方向发送方发送有关重复数据包的信息,以帮助发送方更准确地处理重传和丢包情况。 当…

C语言- 输出班级第n个学生的平均成绩

题目描述 输出班级第 n个学生的平均成绩。每个学生有英语、数学、语文、计算机 4 科成绩。若干个学生的 4 门成绩构成一个表格,可以用二维数组储存,每行代表一个学生的 4 门成绩。以为要计算某个学生的平均成绩,需要快速定位到该生成绩的起始…

概率论与数理统计-条件概率题目1-两次取球问题(有放回)

题目: 设袋中装有r只红球,t只白球.每次自袋中任取一只球,观察其颜色例3然后放回,并再放入a只与所取出的那只球同色的球.若在袋中连续取球四次,试求第一、二次取到红球且第三、四次取到白球的概率. 解答: 涉及到条件概率和多次独立事件的概…

ColorWell for Mac 直装激活 非常实用的调色工具

ColorWell 是一款为Mac操作系统设计的实用工具,它旨在帮助用户快速而方便地选择、管理和应用颜色。这款应用程序特别适合设计师、插画师、网页开发者以及任何需要精确颜色匹配的专业人士使用。ColorWell 的核心功能是提供一个简单直观的界面,让用户可以轻…

C++一维数组练习oj(3)

为什么C的一维数组练习要出要做那么多的题目?因为我们是竞赛学生!想要将每个知识点灵活运用的话就必须刷大量的题目来锻炼思维。 我使用的是jsswoj.com这个刷题网站,当然要钱... C一维数组练习oj(2)-CSDN博客这是上一次的题目讲解 这道题有…

vscode集成git管理项目

一、git与SVN Git: 是一种分布式版本控制系统,每个开发者都可以在本地完整地复制整个代码仓库,并且可以在不连接到中央服务器的情况下进行提交、分支和合并等操作。 SVN :是一种集中式版本控制系统,开发者们只能直接与…

PwnLab靶场PHP伪协议OSCP推荐代码审计命令劫持命令注入

下载链接:PwnLab: init ~ VulnHub 安装: 打开vxbox直接选择导入虚拟电脑即可 正文: 先用nmap扫描靶机ip nmap -sn 192.168.1.1/24 获取到靶机ip后,对靶机的端口进行扫描,并把结果输出到PwnLab文件夹下,命名…

java每日一题——买啤酒(递归经典问题)

前言: 非常喜欢的一道题,经典中的经典。打好基础,daydayup!!!啤酒问题:一瓶啤酒2元,4个盖子可以换一瓶,2个空瓶可以换一瓶,请问10元可以喝几瓶 题目如下: 啤酒问题:一瓶…

【剑指offer】17. 从尾到头打印链表(java选手)

题目链接 题目链接 题目描述 输入一个链表的头结点,按照 从尾到头 的顺序返回节点的值。 返回的结果用数组存储。 数据范围 0≤ 链表长度 ≤1000。 样例 输入:[2, 3, 5] 返回:[5, 3, 2] 思路 (1)从头到尾遍历链…

大数据实时计算的Windows功能?

Windows是数据流的时间窗口,流式数据特点就是源源不断没有边界,但是对于我们数据使用者而言很多时候业务要求对特定时间长度的数据进行切片并统计分析,以此来反映通过时间变化某个业务指标的变化情况,这个时候就需要用到流式计算引…

本地部署千问大模型笔记

使用llama.cpp运行大模型: main 命令有一系列参数可选,其中比较重要的参数有: -ins 交互模式,可以连续对话,上下文会保留 -c 控制上下文的长度,值越大越能参考更长的对话历史(默认&#xff1a…

进程和线程,线程实现的几种基本方法

什么是进程? 我们这里学习进程是为了后面的线程做铺垫的。 一个程序运行起来,在操作系统中,就会出现对应的进程。简单的来说,一个进程就是跑起来的应用程序。 在电脑上我们可以通过任务管理器可以看到,跑起来的应用程…

java锁关键字sychronized

前置知识: 在HotSpot虚拟机中,对象在内存中存储可分为三块区域: 对象头:有MarkWord和Klass Word组成实例数据:里面主要是成员变量对齐填充:不是8的整数倍,则填充 CAS: Compare and Swap是Jav…

3.24 day3 QT

使用手动连接,将登录框中的取消按钮使用ot4版本的连接到自定义的槽函数中,在自定义的槽函数中调用关闭函数 将登录按钮使用qt5版本的连接到自定义的槽函数中,在槽函数中判断u界面上输入的账号是否为"admin",密码是否为&…

video/pdf文件预览与进度上传

video 视频文件直接使用video标签预览&#xff0c;和后端设定的是学员在观看视频时&#xff0c;前端会5秒钟上传一次进度&#xff0c;记录学员当前视频所学的进度&#xff0c;当视频观看完成时会立即触发一次进度上报接口。 <videoref"video":src"xxxxx&quo…

03-SparkSQL入门

0 Shark Spark 的一个组件&#xff0c;用于大规模数据分析的 SQL 查询引擎。Shark 提供了一种基于 SQL 的交互式查询方式&#xff0c;可以让用户轻松地对大规模数据集进行查询和分析。Shark 基于 Hive 项目&#xff0c;使用 Hive 的元数据存储和查询语法&#xff0c;并基于Hiv…

状态机高阶讲解-10

1896 01:19:16,700 --> 01:19:19,550 那接下来我们就开始来建模了 1897 01:19:20,690 --> 01:19:22,163 那建模的开始呢 1898 01:19:22,163 --> 01:19:24,900 我们就首先要添加一个类了 1899 01:19:26,330 --> 01:19:27,868 那我们这个很简单 1900 01:19:27,86…

力扣100热题[哈希]:最长连续序列

原题&#xff1a;128. 最长连续序列 题解&#xff1a; 官方题解&#xff1a;. - 力扣&#xff08;LeetCode&#xff09;题解&#xff0c;最长连续序列 &#xff1a;哈希表 官方解题思路是先去重&#xff0c;然后判断模板长度的数值是否存在&#xff0c;存在就刷新&#xff0c…