`
yolio2003
  • 浏览: 13421 次
  • 性别: Icon_minigender_1
  • 来自: 上饶
最近访客 更多访客>>
社区版块
存档分类
最新评论

ahk

    博客分类:
  • tc
阅读更多

有人肯要我了。哈哈。作为一个小白。我要为未来的工作做好一些准备啊!

今天看到一个ahk的小帖子 记录下来:http://ahk.5d6d.com/viewthread.php?tid=1165

ahk 存储数据的各种方法

[ 读写文本文件 ]

 

相关命令: FileAppend, FileRead, FileReadLine, Loop

 

最简单的办法, 没格式要求, 可根据自己爱好使用符号分隔数据或按行分隔数据或其它. 缺点是检索和修改不咋方便.

 

示例

; 每行存储一个用户信息, 每个用户信息用逗号分隔

user = helfee,male,18`nBLooM2,male,24

 

; 写入当前目录的 user.lst 文件中, 当然这个文件名可以随便取

FileAppend, %user%, user.lst

 

; 循环读取 user.lst 文件, 每次读取一行

Loop, Read, user.lst

{

    ; 解析每一行的内容, 按逗号分隔

    Loop, Parse, A_LoopReadLine, CSV

    {

        ; 输出数据

        MsgBox, %A_LoopField%

    }

}

 

[ 读写 ini 文件 ]

 

相关命令: iniRead, iniWrite, iniDelete

 

拿来做简单的配置文件最方便了, 用起来也很容易.

 

示例

; 在当前目录的 settings.ini 文件中的 login_section 段中设置 user_name 的值为 helfee

; 如果没有自动新建

IniWrite, helfee, settings.ini, login_section, user_name

IniWrite, 999, settings.ini, login_section, password

 

; 读取用户名, 存储 user_name 变量中并输出

IniRead, user_name, settings.ini, login_section, user_name

MsgBox, %user_name%

 

; 删除 settings.ini 文件中 user_name 这一行

IniDelete, settings.ini, login_section, user_name

 

; 再次读取会读取失败

IniRead, user_name, settings.ini, login_section, user_name

; 输出 ERROR

MsgBox, %user_name%

 

[ 读写 xml 文件 ]

 

相关库文件: xpath.ahk

 

官网论坛链接: http://www.autohotkey.com/forum/topic17549.html

 

以 xpath 的方式读写 xml 文件, 通用性好, 批量操作方便. 缺点是要知道 xpath 语法规则, 另外这个库貌似还有点小问题, 比如遇到有注释的 xml 文件有可能就 bug 了.

 

示例猛插这里.

 

xml 及 xpath 相关知识轻抚这里.

 

[ 读写 json 格式 ]

 

相关库文件: json.ahk

 

官网论坛链接: http://www.autohotkey.com/forum/topic34565.html

 

以 json 格式读写数据, json 格式貌似在 javascript 中广泛使用. 不过这个库只能读写, 不能检索.

 

示例

; 添加引用

#Include json.ahk

 

; 建一个 json 格式的数据

; 第一对小括号是在 ahk 中支持多行文本的方法

; 第一对大括号表示 json 数据开始, json 数据以 key: value 的形式保存, ahk 中貌似必须加引号

; 第一对中括号表示这是一个数组

; 中括号里面的每个大括号表示一个实体

user_list = 

(

    {

        "user_list": 

            [{

                "name": "helfee",

                "sex": "male",

                "age": 18

             },

             {

                "name": "BLooM2",

                "sex": "male",

                "age": "24"

             }]

    }

)

 

; 读取数组第二个元素的 name 属性

MsgBox % json(user_list, "user_list[1].name")

 

; 修改第一个元素的 age 属性为 22

json(user_list, "user_list[0].age", 22)

 

; 写入文件保存

FileAppend, %user_list%, user_list.lst

 

json 相关知识敲这里.

 

[ 操作 Access 或 Excel ]

 

官网相关帖子: http://www.autohotkey.com/forum/topic16565.html

 

貌似是利用 COM 那个库然后通过 ADO 来操作, 没看懂, 有兴趣的可以去翻翻.

 

[ 操作 SQLite ]

 

相关库: SQLite.ahk

 

相关文件: sqlite3.exe, sqlite3.dll.  官网下载

 

官网相关帖子: http://www.autohotkey.com/forum/topic12752.html

 

建数据库需要 sqlite3.exe , 如果单独只要 CRUD 操作的话只用 sqlite3.dll 就行了. 大致原理是 DllCall (其实这东西也是超有用的样子...). 如果需要对大量数据进行存储, 检索等操作, 可以考虑这个.

 

示例

; 保证 sqlite3.exe 和 sqlite3.dll 在同一目录

 

; 添加引用

#Include SQLite.ahk

 

; 这个是建立一张 user 表, 有 3 列, 的 sql 语句

sql := "create table user(name, sex, age);"

 

; 利用上面建表的语句建立数据库叫 test.db , 同时返回一个值表示执行是否出错

has_error := _SQLite_SQLiteExe("test.db", sql, output)

; 如果返回值不为 0 表示出错, 为了方便下面的都没做判断了

if (has_error <> 0)

{

    ; $SQLITE_s_ERROR 是全局变量, 保存当前错误信息

    MsgBox % $SQLITE_s_ERROR "`n" output

    Return

}

 

; 初始化, 这个是必须的, 否则运行下面的脚本直接 over

has_error := _SQLite_Startup()

; 读取 test.db 文件

has_error := _SQLite_OpenDB("test.db")

 

; 插入两条数据, 第一个参数就写 -1 就可以了

has_error := _SQLite_Exec(-1, "insert into user values('helfee', 'male', 18)")

has_error := _SQLite_Exec(-1, "insert into user values('BLooM2', 'male', 24)")

 

; 再读取所有出来, 后面几个变量的用处同变量名

has_error := _SQLite_GetTable(-1, "select * from user", result, row_count, col_count)

; 查询结果行数

MsgBox % row_count

; 查询结果列数

MsgBox % col_count

 

; 查询结果, 每行存储一条数据, 数据用 | 分隔, 第一行存储的是列名

Loop, Parse, result, `n

{

    Loop, Parse, A_LoopField, |

    {

        MsgBox % A_LoopField

    }

}

 

; 关闭数据库连接

has_error := _SQLite_CloseDB(-1)

has_error := _SQLite_ShutDown()

复制代码

SQLite Getting Start (英文, 如果英文不太好使用灵格斯词霸将黑体看一遍大致就能用了, 也许...)

 

[ 操作 MySQL ]

 

官网相关帖子: http://www.autohotkey.com/forum/topic12482.html (看后面 PhiLho 的那帖)

 

 

分享到:
评论

相关推荐

    获取按键消息_ahk_

    AutoHotkey(简称AHK)是一种流行的自动化脚本语言,用于创建快捷键、热字符串、窗口管理等任务,极大地提高了用户的工作效率。标题中的“获取按键消息_ahk_”表明我们将探讨如何在AutoHotkey中捕获和处理键盘输入...

    AHK懒人包,有多种工具与说明

    AutoHotkey(简称AHK)是一种强大的自动化脚本语言,尤其适合创建自定义快捷键和热键,提高工作效率。这个“AHK懒人包”显然为初学者提供了一站式的资源,包含各种实用的工具和详尽的说明,旨在简化AHK的学习过程。 ...

    AHK源码带网络验证版加密器

    2.2网络验证插件仅支持32位ahk编译,运行. 网络验证插件仅支持32位ahk编译,运行 网络验证插件仅支持32位ahk编译,运行 2.3脚本当前目录请复制autohotahkU 32.exe文件.并改名为autohotkey.exe 3,若有BUg和建议

    Ahk2Exe1.1.36.02e.zip

    标题 "Ahk2Exe1.1.36.02e.zip" 指的是一款名为 Ahk2Exe 的工具的压缩包版本。Ahk2Exe 是一个非常实用的工具,主要用于将 AutoHotkey(AHK)脚本转换成可执行文件(exe)。AutoHotkey 是一种流行的、免费的、开源的...

    AHK-CapsLock修改为回车-左手快捷键.ahk

    关键字-回车映射-ahk回车映射-左手回车 ;;快捷键x说明 上下左右 ;; CapsLock+a 箭头左 ;; CapsLock+s 箭头下 ;; CapsLock+d 箭头右 ;; CapsLock+w 箭头上 ;; CapsLock+q 箭头上--防止误触屏-CapsLock+q也映射为箭头...

    SCITE4AHK小改进整合中文版

    基于最新的scite4ahk做了些许修改的一个版本。 必须自行安装最新版的AHK,目前是1.1.13.1。然后解压到AHK的安装目录。比如,AHK安装目录是C:\Program Files\AutoHotkey,那么就在这个目录解压。这样才能正常运行...

    AutoHotkey脚本.ahk文件关联工具-解决方案-注册表.zip

    AutoHotkey(AHK)是一种流行的自动化工具,用于创建自定义热键、快捷方式和脚本来简化日常计算机操作。在Windows系统中,.ahk文件是AutoHotkey脚本的扩展名,通常需要通过AutoHotkey解释器来执行。然而,有时用户...

    AHK(AutoHotKey)国外强大的按键软件

    AHK 是一个叫 AutoHotKey 的软件的缩写,可以实现很多有趣的功能,可以简化你的重复性工作。比如修改系统快捷键、模拟鼠标键盘按键的按下……这些是比较基础的,AHK 还有很多有趣的功能,我会在这一系列教程中和大家...

    ahk专用中文编辑器整合版(多合一)

    AutoHotkey(AHK)是一种流行的自动化脚本语言,它允许用户通过编写简短的脚本来执行各种任务,包括快捷键映射、热字符串、窗口管理等。"ahk专用中文编辑器整合版(多合一)" 提供了一个集成化的环境,专为AutoHot...

    剑灵自动吃符_ahk剑灵_剑灵_

    标题中的“剑灵自动吃符_ahk剑灵_剑灵_”暗示了这是一个关于《剑灵》游戏的自动化脚本,使用了AutoHotkey(AHK)编程语言来实现。AutoHotkey是一种流行的Windows自动化工具,允许用户通过编写脚本来创建热键、宏以及...

    SET_AHK.exe按键连发工具

    今天我们要介绍的是一款基于AutoHotkey(AHK)脚本语言开发的工具——SET_AHK.exe按键连发工具。 首先,我们需要了解一下AutoHotkey这个开源的自动化工具。它的设计理念是通过编写简单的脚本,来实现键盘和鼠标行为...

    AHK帮助中文版-切换到目录后使用.rar

    标题中的“AHK帮助中文版-切换到目录后使用.rar”指的是AutoHotkey(AHK)的中文帮助文档,这是一个压缩文件,包含了关于AHK的详细教程和参考指南。AutoHotkey是一种流行的、免费的、开源的脚本语言,主要用于自动化...

    AHK 办公室闹铃OfficeClock

    【AHK办公室闹铃OfficeClock】是一款基于AutoHotkey(AHK)脚本语言开发的简单而实用的桌面闹钟程序,专为办公环境设计。它可以帮助用户在工作时间设置提醒,确保不会错过上下班时间或其他重要事务。下面将详细介绍...

    SET_AHK按键连发工具

    SET_AHK按键连发工具是一款基于AutoHotkey脚本语言开发的高效自动化工具,主要用于实现游戏或应用程序中的按键自动连续点击功能。AutoHotkey是一种强大的Windows自动化和快捷方式创建工具,用户可以通过编写简单的...

    便捷剪贴板查看器[AHK脚本源代码] - 按下Ctrl键,以工具提示方式在鼠标指针旁边显示当前剪贴板内容

    使用AHK编写的脚本源代码。 按下Ctrl键,以工具提示方式在鼠标指针旁边显示当前剪贴板内容;松开Ctrl键消失。 ·剪贴板内容为文本时,忠实显示文本。 ·剪贴板内容为文件时,显示文件列表。 ·剪贴板内容为无法转换...

    学习AHK的典型工具

    **自动Hotkey (AHK) 入门及OneQuick.exe工具详解** 自动Hotkey(AHK)是一种强大的脚本语言,用于自动化Windows操作系统中的各种任务。它允许用户创建快捷键、热字符串、窗口管理器以及复杂的脚本来提高生产力。AHK...

    AHK 拷贝 win 资源管理器选择文件的文件名与路径到剪切板

    标题中的“AHK 拷贝 win 资源管理器选择文件的文件名与路径到剪切板”指的是使用 AutoHotkey (AHK) 这款自动化脚本语言,编写脚本来实现在Windows资源管理器中选中多个文件后,一键将这些文件的完整路径和名称复制到...

    AHK懒人包

    AutoHotkey(简称AHK)是一款强大的自动化工具,尤其适合那些想要提高工作效率、自定义快捷键或编写简单脚本的用户。"AHK懒人包"是为方便初学者和高级用户快速上手AutoHotkey而精心整理的集合,包含了各种预设的脚本...

    SET_AHK.rar

    很抱歉,但根据您提供的信息,"SET_AHK.rar" 的标题和描述似乎并不包含具体的IT知识点。描述中的内容看起来是一段无关联的文本,不涉及任何技术细节或概念。同样,标签和压缩包内的文件名称"SET_AHK.exe"虽然暗示这...

Global site tag (gtag.js) - Google Analytics