|
6#
楼主 |
发表于 2024-4-23 03:10:39
|
只看该作者
<火山程序 类型 = "通常" 版本 = 1 />
方法 内存_读配置 <公开 静态 类型 = 文本型>
参数 配置文件 <类型 = 文本型>
参数 节名称 <类型 = 文本型>
参数 配置项名称 <类型 = 文本型>
参数 默认文本 <类型 = 文本型>
{
变量 文本 <类型 = 文本型>
变量 局_结果数组 <类型 = 文本数组类>
变量 局_结果数组2 <类型 = 文本数组类>
变量 局_节名 <类型 = 文本型>
变量 局_长度 <类型 = 整数>
变量 局_寻找位置 <类型 = 整数>
变量 局_结束位置 <类型 = 整数>
变量 局_结果文本 <类型 = 文本型>
变量 局_结果长度 <类型 = 整数>
变量 局_文本长度 <类型 = 整数>
变量 索引 <类型 = 整数>
变量 配置文件内容 <类型 = 字节集类>
配置文件内容 = 读入文件 (配置文件, )
文本 = UTF8到文本 (配置文件内容)
// 调试输出 ("文本", 文本)
局_文本长度 = 取文本长度 (文本)
局_节名 = "[" + 节名称 + "]"
局_长度 = 取文本长度 (局_节名)
局_寻找位置 = 寻找文本 (文本, "[" + 节名称 + "]", , )
局_结束位置 = 寻找文本 (文本, "[", 局_寻找位置 + 局_长度, )
如果 (局_结束位置 == -1)
{
局_结果长度 = 局_文本长度 - 局_寻找位置
}
否则
{
局_结果长度 = 局_结束位置 - 局_寻找位置
}
局_结果文本 = 取文本中间 (文本, 局_寻找位置, 局_结果长度)
// 调试输出 (局_长度, 局_寻找位置, 局_结束位置, 局_结果文本)
分割子文本 (局_结果文本, "\r\n", 局_结果数组, , )
计次循环 (局_结果数组.取成员数 ())
{
索引 = 取循环索引 ()
如果真 (寻找文本 (局_结果数组.取成员 (索引), 配置项名称 + "=", , ) != -1)
{
如果真 (分割子文本 (局_结果数组.取成员 (索引), "=", 局_结果数组2, , ) == 2)
{
返回 (局_结果数组2.取成员 (1))
}
}
}
全局信息框 ("读取失败:" + 节名称 + "|" + 配置项名称, , , )
返回 (默认文本)
// 分割子文本 (文本, "[" + 节名称 + "]", 局_结果数组, 假, 假)
// 分割子文本 (局_结果数组.取成员 (1), "\r\n", 局_结果数组2, , )
// 分割文本 (文本, "[" + 节名称 + "]", 局_结果数组, 真, 真)
// 调试输出 ("[" + 节名称 + "]", 局_结果数组2.取成员数 ())
// 调试输出 (局_结果数组2)
}
|
|