绿色风's Blog
专注AutoIT(Au3)
  • 首页
  • 流●年
  • 笔●记
    • 学习随记
    • 源码示例
  • 脚●本
    • UDF(收集)
    • 工作室UDF
    • 工具●教程
    • 教程之GDI
  • 作●品
  • 下●载
  • 情怀ExcelTip
4月72021

AU3非标准ini文件的读删写

作者:绿色风   发布:2021-4-7 0:57 Wednesday   分类:工作室UDF   阅读:3252次   评论:0条  

例如

[www]
www.jianyiit.com
www.autoitx.com
[ip]
127.0.0.1
192.168.1.1









#include <array.au3>
by:绿色风 qq:79664738  

;读取 非标文件中的  字段名
Func _oIniReadName($_md)
        Local $str = FileRead($_md);读取文件
        If @extended < 2 Then Return -2 ;读取文件失败
        Local $arr = _StringBetween($str, '[', ']');取两字符 串间的内容
        Return $arr ;返回一个基于0开始计算的一维数组, $array[0] 包含第一个找到的内容.
EndFunc   ;==>_oIniReadName

;读取 非标文件中的 所有的键
Func _oIniReadALL($_md, $_name)
        Local $str = FileRead($_md);读取文件
        If @extended < 2 Then Return -2 ;读取文件失败
        Local $arr = _StringBetween($str & '[', '[' & $_name & ']', '[') ;取两字符 串间的内容
        If $arr = 0 Then Return 0;返回0 获取 失败
        $str = StringRegExpReplace($arr[0], '^\v+|\v+(?=\r\n\V|$)', '') ;清掉空行
        Return StringSplit($str, @CRLF, 1) ;返回 一个所有键的数组
EndFunc   ;==>_oIniReadALL

;删除 非标文件中的 字段名
Func _oIniDelName($_md, $_name)
        Local $str = FileRead($_md);读取文件
        If @extended < 2 Then Return -2 ;读取文件失败
        Local $arr = _StringBetween($str & '[', '[' & $_name & ']', '[') ;取两字符 串间的内容
        If $arr = 0 Then Return 0;返回0 没有这个字段 名
        $str = StringReplace($str, '[' & $_name & ']' & $arr[0], "")
        Local $file = FileOpen($_md, 2)
        FileWrite($file, $str)
        FileClose($file)
        Return ;
EndFunc   ;==>_oIniDelName

;删除或添加 非标文件中的 键
;参数 $_md 文件
;        $_name 字段名
;   $_var 键名
;  $add = 0 添加 键名, = 1 删除键名
Func _oIniDelNameVer($_md, $_name, $_var, $add = 0) 
        Local $str = FileRead($_md);读取文件
        If @extended < 2 Then Return -2 ;读取文件失败
        Local $arr = _StringBetween($str & '[', '[' & $_name & ']', '[') ;取两字符 串间的内容
        If $arr = 0 Then Return 0;返回0 没有这个字段 名
        If $add = 0 Then ;删除
                Local $strl = StringReplace($arr[0] & @CRLF, @CRLF & $_var & @CRLF, @CRLF)
                If @extended < 1 Then Return -1;返回 -1 没有这个键
        Else ;$add = 其它值  添加
                Local $strl = StringReplace($arr[0] & @CRLF, @CRLF & $_var & @CRLF, @CRLF)
                If @extended > 0 Then Return -11;返回 -11 已有这个键
                $strl = $arr[0]&@crlf&$_var&@crlf
        EndIf
        $str = StringReplace($str, '[' & $_name & ']' & $arr[0], '[' & $_name & ']' & $strl)
        Local $file = FileOpen($_md, 2)
        FileWrite($file, StringRegExpReplace($str, '^\v+|\v+(?=\r\n\V|$)', ''));清掉空行
        FileClose($file)
        Return 1;成功返回1
EndFunc   ;==>_oIniDelNameVer






本文固定链接: http://www.jianyiit.com/post-377.html

blogger
该日志由 绿色风 于2021-4-7 0:57 Wednesday发表在 工作室UDF 分类下。
版权所有:《绿色风's Blog》 → 《AU3非标准ini文件的读删写》;
除特别标注,本博客很多文章均为原创. 互联分享,尊重版权,转载请以链接形式标明本文地址;
本文标签:

扫描二维码,在手机上阅读
上一篇::树莓派3b 完全删除 docker
下一篇:清理windows系统图标缓存

热门文章

相关文章

  • Au3有道翻译UDF
  • 将Run执行cmd命令结果直接返回[回显]
  • TTS文本语音_UDF
  • ip加解密/字符串
  • AU3中按时间排序杯举文件列表[秒开]
取消回复

发表评论

亲,头像对么?

62 + 31 =

提交中,请稍候……


木有头像就木JJ啦!还木有头像吗?点这里申请属于你的个性Gravatar头像吧!


    站点统计
    • 运行时间: 20254 天
    • 日志总数: 365 篇
    • 评论数量: 7222 条
    • 微语数量: 6 条
    • 附件总量: 388 件
  • 逝出的青春

  • 打赏"绿色风"



      扫码关注本站公众号 可搜本站内容

  • Autoit V3 脚本交流群

      常驻群1:905774875
      常驻群2:40672266


  • 链接

    • AU3中文论坛
    • Excel资料库
    • 完美者博客
    • 顺网小哥'S Blog
    • 猛牛哥的博客
    • 网吧系统下载
  • 分类

    • 流●年(66)
    • 笔●记(0)
    • 脚●本(0)
    • 作品(21)
    • 学习随记(51)
    • 源码示例(68)
    • UDF(收集)(26)
    • 工作室UDF(30)
    • 工具●教程(62)
    • 教程之GDI(24)
Copyright © 2013 绿色风's Blog. Powered by emlog. Theme by 射雕天龙. 鄂ICP备2021011689号-1 鄂公网安备42102302000078号 sitemap