aardio - 【库】扩展函数库

33 篇文章 16 订阅

实现功能:

 

扩展内核库功能

  • toHex(__,,) = 取十六进制文本。\n参数1:支持数值number、文本string、缓冲区buffer、指针pointer。\n如果是string、buffer、pointer,可以带以下两个参数:\n    参数2:开始位置(默认为1)\n    参数3:要转换的数据长度(默认为1)。
  • toText(__) = 取遇0终止文本。\n参数支持:string、buffer、pointer、number(数值则转换为指针)
  • hexToNumber(__) = 十六进制文本转数值
  • hexToString(__) = 十六进制文本转文本
  • hexToBuffer(__) = 十六进制文本转缓冲区
  • win.ui.menu.setPopmenuHeight(__/*弹出菜单句柄*/,/*总高度*/) = 设置弹出菜单总高度。一但菜单超过这个高度时将自动出现滚动箭头。
  • godking.setTreeviewItems(__,,,) = 设置树型框项目。\n参数:1、树型框组件 2、项目文本 3、项目图片索引表 4、项目选中状态表\n项目文本格式:缩进层级从0开始+","+项目文本+换行\n如:\n"0,父级1\n1,一级子级\n2,二级子级\n2,二级子级\n0,父级2\n1,一级子级\n2,二级子级\n3,三级子级"
  • godking.ppt2img(__/*ppt文件*/,/*保存目录*/,/*保存格式*/) = ppt保存为图片。\n保存格式默认为png:0x12/*_ppSaveAsPNG*/ 
  • godking.xls2pdf(__/*xls文件*/,/*pdf文件*/) = xls文件保存为pdf
  • showCursor() = 显示鼠标光标
  • hideCursor() = 隐藏鼠标光标
  • setVarValue(__,) = 通过变量名,获取变量值。\n参数:\n1:变量名\n2:变量值\n3:是否包含全局变量(默认true)\n否则仅限var声明的局部变量\n4:自调用该函数的函数开始(第1层)向上,不查找这些层级函数内的变量。\n默认为0,即不排除任何层(包含当前函数内的变量,全部查找。)\n\n变量值查找顺序(找到即返回):\n1:先取层次最近的局部变量\n2:再取全局变量\n3:再执行eval计算变量名的值
  • getVarValue(__) = 通过变量名,获取变量值\n参数:\n1:变量名\n2:是否包含全局变量(默认true)。否则仅限var声明的局部变量\n3:自调用该函数的函数开始(第1层)向上,不查找这些层级函数内的变量。\n默认为0,即不排除任何层(包含当前函数内的变量,全部查找。)\n\n变量值查找顺序(找到即返回):\n1:先取层次最近的局部变量\n2:再取全局变量\n3:再执行eval计算变量名的值
  • f(__) = 用对应的变量值,替换字符串中的“{变量名}”\n参数:\n1:变量名\n2:是否包含全局变量(默认true)。否则仅限var声明的局部变量\n3:自调用该函数的函数开始(第1层)向上,不查找这些层级函数内的变量。\n默认为0,即不排除任何层(包含当前函数内的变量,全部查找。)\n\n类似于python中的f"abc{var}def"表达式。\n如:\nvar num = 123;\nvar s = f("abcd{num}efgh")\n则 s 的值为:abcd123efgh

  • string.utf8ToAnsi(__) = utf8转ansi。编码为_CHARSET_开头的常量。
  • string.utf8ToGbk(__) = utf8转GBK。编码为_CHARSET_开头的常量。
  • string.utf8ToUnicode(__) = utf8转unicode(UTF16)。编码为_CHARSET_开头的常量。
  • string.ansiToUtf8(__) = ansi转utf8。编码为_CHARSET_开头的常量。
  • string.ansiToUnicode(__) = ansi转unicode(UTF16)。编码为_CHARSET_开头的常量。
  • string.ansiToGbk(__) = ansi转gbk。编码为_CHARSET_开头的常量。
  • string.unicodeToUtf8(__) = unicode(UTF16)转utf8。编码为_CHARSET_开头的常量。
  • string.unicodeToAnsi(__) = unicode(UTF16)转ansi。编码为_CHARSET_开头的常量。
  • string.unicodeToGbk(__) = unicode(UTF16)转gbk。编码为_CHARSET_开头的常量。
  • table.sortEx(__,1,false,0,true) = 表排序。\n不修改原表,返回排序后的表。失败返回null。\n参数1:要排序的表。如果每一项都是表(子表),则需要通过参数2指定排序的参考字段;\n参数2:要排序的子表的参考字段(数组索引或字典键名);\n       如果子项为数组,则参考字段默认为1\n参数3:是否逆序。\n参数4:将数据进行转换后再排序,1转换为时间,2转换为数值,3转换为文本,其它不转换。\n参数5:使用微软dll进行字符串排序。速度稍慢。

  • raw.fromByte(__) = 创建字节型数据(1字节)
  • raw.fromWord(__) = 创建双字节(短整数)数据(2字节)
  • raw.fromInt(__) = 创建整数型数据(4字节)
  • raw.fromFloat(__) = 创建单精度小数数据(4字节)
  • raw.fromDouble(__) = 创建双精度小数数据(8字节)
  • raw.fromLong(__) = 创建长整数数据(8字节)
  • raw.readByte(__,1) = 读取字节值(1字节)。\n参数:1、指针(数值会转换为指针)、buffer、string 2、读取开始位置(默认为1)
  • raw.readWord(__,1) = 读取短整数(2字节)。\n参数:1、指针(数值会转换为指针)、buffer、string 2、读取开始位置(默认为1)
  • raw.readInt(__,1) = 读取整数型(4字节)。\n参数:1、指针(数值会转换为指针)、buffer、string 2、读取开始位置(默认为1)
  • raw.readFloat(__,1) = 读取单精度小数(4字节)。\n参数:1、指针(数值会转换为指针)、buffer、string 2、读取开始位置(默认为1)
  • raw.readDouble(__,1) = 读取双精度小数(8字节)。\n参数:1、指针(数值会转换为指针)、buffer、string 2、读取开始位置(默认为1)
  • raw.readLong(__,1) = 读取长整数(8字节)。\n参数:1、指针(数值会转换为指针)、buffer、string 2、读取开始位置(默认为1)
  • raw.readBuffer(__,1,/*长度*/) = 读取内容,返回Buffer类型数据。\n参数:\n1、指针(数值会转换为指针)、buffer、string \n2、读取开始位置(默认为1)\n3、读取长度(buffer或string时默认到尾部,指针时默认为1)
  • raw.readString(__,1,/*长度*/) = 读取内容,返回String类型数据。\n参数:\n1、指针(数值会转换为指针)、buffer、string \n2、读取开始位置(默认为1)\n3、读取长度(buffer或string时默认到尾部,指针时默认为1)
  • raw.writeByte(__,1,) = 写入字节值(1字节)。\n参数:1、指针(数值会转换为指针)、buffer、string 2、写入开始位置(默认为1) 3、写入值
  • raw.writeWord(__,1,) =写入短整数(2字节)。\n参数:1、指针(数值会转换为指针)、buffer、string 2、写入开始位置(默认为1)3、写入值
  • raw.writeInt(__,1,) = 写入整数型(4字节)。\n参数:1、指针(数值会转换为指针)、buffer、string 2、写入开始位置(默认为1)3、写入值
  • raw.writeFloat(__,1,) = 写入单精度小数(4字节)。\n参数:1、指针(数值会转换为指针)、buffer、string 2、写入开始位置(默认为1)3、写入值
  • raw.writeDouble(__,1,) = 写入双精度小数(8字节)。\n参数:1、指针(数值会转换为指针)、buffer、string 2、写入开始位置(默认为1)3、写入值
  • raw.writeLong(__,1,) = 写入长整数(8字节)。\n参数:1、指针(数值会转换为指针)、buffer、string 2、写入开始位置(默认为1)3、写入值
  • raw.writeData(__,1,/*数据*/,/*长度*/) = 写入数据。\n参数:\n1、指针(数值会转换为指针)、buffer、string \n2、写入开始位置(默认为1)\n3、写入数据(buffer、string、结构体)\n4、数据长度\n如果不指定长度,则超出目标内存区域时自动截断,并返回执行结果\n如果指定长度,则超出目标内存区域时视为失败,不写入并返回null
  • raw.getPointer(__,i) = 获取指针,返回pointer。\n参数:1、指针、数值、buffer、string 2、偏移量(默认为0)
  • raw.slice(__,i,j) = 从buffer类型数据中截取位置i到j的数据。\n同string.slice()。返回string类型数据。\n如果i、j为负数则从右侧倒数计数\n省略参数j则到尾部

  • _CHARSET_UTF8 = @65001/*_CHARSET_UTF8*/
  • _CHARSET_UTF16 = @1200/*_CHARSET_UTF16*/
  • _CHARSET_UNICODE = @1200/*_CHARSET_UNICODE*/
  • _CHARSET_BIG5 = @950/*_CHARSET_BIG5*/
  • _CHARSET_GBK = @936/*_CHARSET_GBK*/
  • _CHARSET_ANSI = @0x0/*_CHARSET_ANSI*/
  • _CHARSET_GB18030 = @54936/*_CHARSET_GB18030*/
  • _CHARSET_GB2312 = @936/*_CHARSET_GB2312*/

  • 删除 plus 按钮配色函数,请使用 win.ui.css 样式表库( 风行者制作 )

库文件位置:

下载地址:http://chengxu.online  →aardio资源下载→_.rar

解压缩将文件放于:\lib\godking\_.aardio 

调用示例:

import console; 
import godking;

var num = 12345678
var txt="12345678"
var buffer = raw.buffer(txt);
var pointer = raw.toPointer(buffer)
console.log(toHex(num))
console.log(toHex(txt))
console.log(toHex(buffer))
console.log(toHex(pointer,-8,20))

var utf8 = "这里是utf8字符串"
var ansi = string.utf8ToAnsi(utf8)
var unicode = string.ansiToUnicode(ansi)
console.log("utf8->",toHex(utf8))
console.log("ansi->",toHex(ansi))
console.log("unicode->",toHex(unicode))

console.pause(true);

执行结果:

  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卢光庆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值