纯c读写ini配置文件用c/c++读写ini配置文件有不少第三方的开源库,如iniparser、libini、rwini、UltraLightINIParser等,但都不理想,往往代码较大、功能较弱、接口使用不方便。
尤其在大小写处理、前后空格、各种注释、跨平台换行符支持、带引号字符串处理、无section操作、原格式保持等方面存在问题。
现将本人精心制作的ini读写程序源码奉献给大家,纯c编写,简洁好用。
支持windows和linux。
主要特点:1、支持;和#注释符号,支持行尾注释。
2、支持带引号'或"成对匹配的字符串,提取时自动去引号。
引号中可带其它引号或;#注释符。
3、支持无section或空section(名称为空)。
4、支持10、16、8进制数,0x开头为16进制数,0开头为8进制。
5、支持section、key或=号前后带空格。
6、支持\n、\r、\r\n或\n\r换行格式。
7、不区分section、key大小写,但写入时以新串为准,并保持其大小写。
8、新增数据时,若section存在则在该节最后一个有效数据后添加,否则在文件尾部添加。
9、支持指定key所在整行删除,即删除该键值,包括注释。
10、可自动跳过格式错误行,修改时仍然保留。
11、修改时保留原注释:包括整行注释、行尾注释(包括前面空格)。
12、修改时保留原空行。
以上三点主要是尽量保留原格式。
不足之处:1、不支持单key多value(逗号分割),只能一次性提取后自行处理。
2、不支持同名重复section和key。
(重复section可视为错误,重复key则可能造成分歧)3、不能提取所有section或key名称。
使用只需两个文件inirw.h、inirw.c,另有测试程序和工程文件,支持windows和linux。
2025/10/15 11:32:26 7KB c 读写 ini
1
数据库实习作业。
我用3天从0到写了一个还算完善的购物系统。
这是一个比较简易的课程设计作业。
互联网的精神是反垄断。
我能三天学+写完这个作业很感谢那么多前辈的博客和学习笔记让我少走了很多弯路。
完整的www代码在附加资源里。
请在文件里将数据库连接的”密码“改成自己的密码。
2025/10/14 13:56:32 995KB Wampserver php mysql apache
1
---猜拳游戏---整合版包括1.0版本与2.0版本(不用问我为啥更新这么快)我用javaSE写的小游戏,运行环境:javaSE的jdk游戏代码去看我博文哦!!!已经打包成exe文件了!!!打包教程,看我博文!!!
2025/10/12 16:19:37 267KB java javase 小游戏 整合版
1
锐尔文档扫描影像处理系统是通过普通或高速扫描仪将各种纸质文档、资料扫描录入计算机,经过图像处理、压缩、优化并存储为电子影像文件的工具软件,能够有效帮助单位、企业资料管理部门将纸质文档管理改成先进高效的电子化文档管理。
广泛应用于图书馆、档案馆、出版社、政府机关、银行、工商、税务、保险、医院等机构、各种企事业档案部门及档案数字化扫描加工企业。
软件功能◇快捷扫描能力简单而强大的扫描参数设置,支持单、双面扫描,可以追加扫描、插入扫描、替换扫描、扫描区域预定义、平板自动扫描等◇各种图像存储支持支持单页TIF,多页TIF,JPG,BMP等图像格式,支持CCITT,LZW,JPEG等多种压缩算法及100级图像压缩质量设置等◇多种图像浏览功能上一图、下一图、上一屏、下一屏、上个目录、下个目录,按高度适应、按宽度适应、区域放大、图像导航、放大镜,二页、四页、六页、八页多图模式浏览等◇强大影像优化功能多达几十种影像优化功能,旋转、纠斜、翻转、去污、去噪、去黑边、裁剪、居中、文字优化、背景清除、图像调整、色阶调整、二值化、幅面调整、智能修补、手工克隆、底色绘制、文字标红、图像拼接、图像分割、批量图像处理等◇易用的文件目录管理批量创建扫描目录,目录搜索,批量更名,导入导出,插入文件,替换文件等◇更多高级功能删除白页,调序,合并为TIF/PDF,拆分,页码重编,签章,水印,文档分件,OCR文字识别,双层PDF,文件统计,图像质量检查,图像打印等。
2025/10/12 16:08:09 49.16MB OCR 扫描 影响处理
1
基于react+antd项目搭建成一个简单的共享单车系统,此项目可以帮你熟悉antd常用的组件,另外可以熟悉react
2025/10/12 14:40:55 29.78MB antd react
1
phantomjshtml转pdf完美版本可以把html非常完美的转成pdf,与浏览器转换出来的一样完美
2025/10/11 1:52:27 83.05MB phanto html pdf
1
用幅度差的的方法将时间序列数据转换成复杂网络并进行单位权值与点权的计算
2025/10/10 17:45:36 989B 幅度差 时间序列 复杂网络
1
1、单元电路实现,两种实现方式都可以,一:2输入门;
二:复杂CMOS门。
2、由单元电路连接成4位加法器。
3、Chartered0.35工艺。
4、通过波形仿真、DRC、LVS。
首先熟悉cadence软件的使用,练习反相器的原理图和版图绘制,并仿真,运行DRCLVS规则检查。
2025/10/8 20:28:51 885KB 数字芯片设计
1
等保三级安全管理制度所需文档、表格,拆分成4个压缩包上传。
内容包括总体方针、政策、安全管理制度、规范流程、执行表单,其中方针文档1个、安全管理制度20个、规范流程21个、执行表单50个。
其中公司名称都替换成XXX,方便大家替换使用。
1
上次曾经传过一个易宝、支付宝、财付通、云网等多用MD5加密程序。
易宝是采用hmac的MD5加密,提供的ASP版函数不支持中文,使用dll注册那个兼容又不太好。
上次我发布的加密程序也不支持中文,且支付宝那个加密函数是错误的。
为此我专门研究了三天的hmac方案,当然了我也只是通过改进代码反复测试而已。
先是调用易宝提供的C++版dll,因为我知道它支持中文。
我先是把ASP版的密钥key进行unicode处理,然后用中文密钥与dll版加密结果竟然一致了。
当时一高兴,认为处理中文字符肯定是采用unicode的。
结果把密文换成中文一试,又不行了。
我又想到按普通字符处理,中文字符再And&HFF,反复试验还是不行。
浪费了两天,也找到了另一个C++版hmac函数源码,没看到有字符编码处理。
最后才想到易宝提供的其它源码。
PHP源码还是比较容易看懂的,原来加密的字符text和密钥key都是先转换为UTF-8编码。
这一点与原先那个dll里就可能不一致,把PHP上传到空间一测试,果然密钥使用中文是不一样的。
我也无法知道易宝自己到底使用哪一种方案,先设计一个UTF-8的转码函数吧。
网上找了下,光这些函数都有几十K大小,还是自己设计省事。
ASP版的hmac都不支持中文,就是没有转码函数。
VB还有StrConv可以转换unicode,ASP却不能用。
其实我们常用的ASP版md5加密,与其它程序的也是不兼容中文。
原因还是ASP转换unicode十分困难,但是支付宝的接口是有这么个函数的,而且代码很简练,我参考它设计了UTF-8编码函数。
(支持多国语言的哦)经过三天的改进,程序从17K精简到了9K,使hmac兼容中文,md5也提供了两个版本,一是ASP简版,二是标准版。
这个标准版是指其它程序都在采用的unicode编码方案,其实ASP简版才是我们最多使用的,但它并不通用。
调用方法:HmacMd5(text,key)-加密内容支持中文,但key最好用非中文的。
md5(text)-简版,ASP_MD5(text)-标准版支付宝一定要用ASP_MD5,财付通的加密内容一般没中文的,所以两者均可。
2025/10/5 17:20:38 3KB ASP hmac md5 utf-8
1
共 1000 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡