传奇HAOM2翎风最新更新了对CSV表格的读冉式,支持将CSV表格读取为常量形式进行操作,并增加了CSV接口及相关命令。这些更新将使开发者能够更加方便地操作CSV表格,提高开发效率。
新的CSV接口及相关命令包括:
CSVOpenCache:将CSV表格加载到内存中,支持热加载,修改文件后可使用CSVOpenCache重新加载文件命令更新缓存内容。
CSVGetCellInfo:获取CSV文件的最大行数和最大列数。
CSVGetCellText:读取单元格的内容。
CSVFindTextRow:查找内容出在第几行。
这些新命令将使开发者能够更加方便地操作CSV表格,提高开发效率。
以下是一个示范脚本,演示了如何使用这些新命令:
[@测试]
#act
;CSVOpenCache..\\QuestDiary\\Test.csv
CSVGetCellInfo..\\QuestDiary\\Test.csvN$总行数N$总列数
MovN$行数0
WhileN$行数<N$总行数
CSVGetCellText..\\QuestDiary\\Test.csv<$STR(N$行数)>0S0
CSVGetCellText..\\QuestDiary\\Test.csv<$STR(N$行数)>1S1
CSVGetCellText..\\QuestDiary\\Test.csv<$STR(N$行数)>2S2
Sendmsg6[<$STR(N$行数)>0]<$STR(S0)>;[<$STR(N$行数)>1]<$STR(S1)>;[<$STR(N$行数)>2]<$STR(S2)>;
IncN$行数1
EndWhile
CSVFindTextRow..\\QuestDiary\\Test.csv1.25倍0~1020N0
Sendmsg6"1.25倍"在<$STR(N0)>行第2列中
;--------------------------------------------------------
;表格内容作为常量进行获取,仅对CSVOpenCache的可用...
;读取时会已常量形式存放在内存中(如果不经常更改的情况下建议放在QM的[@Startup]启动触发执行)
;修改CSV文件后可使用CSVOpenCache重新加载文件命令更新缓存内容
;通过以下去读相关内存中的表格常量值
[@测试]
#act
CSVOpenCache..\\QuestDiary\\Test.csv
SendMsg7TEST表格内第一行第二列值为:<$TEST(12)>
MovS1<$TEST(12)>
SendMsg51行2列的值为:<$STR(S1)><$TEST(12)>
Copy
在这个示范脚本中,我们首先使用CSVOpenCache命令加载了Test.csv表格到内存中。然后,我们使用CSVGetCellInfo命令获取了表格的最大行数和最大列数,并使用CSVGetCellText命令读取了表格中的单元格内容。最后,我们使用CSVFindTextRow命令查找了表格中的特定内容。
增加了CSV接口及相关命令更新了支持CSV为常量形式进行操作扩展了CSVOpenCache加载表格到内存支持热加载加载csv表格内容到内存中CSVOpenCache文件路径修改文件后可使用CSVOpenCache重新加载文件命令更新缓存内容
功能说明:CSV表格读取CSV相关命令
;-------------------------------------------
;将文件设置为缓存,某一文件执行此命令后,所有的操作都是缓存操作(不使用缓存命令读取的文件可以实时操作)
;如果不经常更改的情况下建议放在QM的[@Startup]启动触发执行缓存命令,可加快脚本运行速度与效率
;修改文件后可使用CSVOpenCache重新加载文件命令更新缓存内容
加载csv表格内容到内存中
CSVOpenCache文件路径
;-------------------------------------------
获取CSV文件的最大行数和最大列数
CSVGetCellInfo文件路径最大行数保存变量最大列数保存变量
读取单元格的内容
CSVGetCellText文件路径行数列数保存变量
查找内容出在第几行
CSVFindTextRow文件路径字符串开始行~结束行列数(从第几列查找)0/1(0:开始出现的行;1:最后出现的行)保存变量
--------------------------------------------------------------
下面示范脚本的Test.csv内容
;备注符号,读取时会忽略此行
;转生等级当前属性下级属性需求材料
0当前攻击1.05倍1.10倍转生晶石1
1当前攻击1.10倍1.15倍转生晶石2
2当前攻击1.15倍1.20倍转生晶石3
3当前攻击1.20倍1.25倍转生晶石4
4当前攻击1.25倍1.30倍转生晶石5
5当前攻击1.30倍1.35倍转生晶石6
-------------------------------------------------------------
;示范脚本
[@测试]
#act
;CSVOpenCache..\QuestDiary\Test.csv
CSVGetCellInfo..\QuestDiary\Test.csvN$总行数N$总列数
MovN$行数0
WhileN$行数<N$总行数
CSVGetCellText..\QuestDiary\Test.csv<$STR(N$行数)>0S0
CSVGetCellText..\QuestDiary\Test.csv<$STR(N$行数)>1S1
CSVGetCellText..\QuestDiary\Test.csv<$STR(N$行数)>2S2
Sendmsg6[<$STR(N$行数)>0]<$STR(S0)>;[<$STR(N$行数)>1]<$STR(S1)>;[<$STR(N$行数)>2]<$STR(S2)>;
IncN$行数1
EndWhile
CSVFindTextRow..\QuestDiary\Test.csv1.25倍0~1020N0
Sendmsg6"1.25倍"在<$STR(N0)>行第2列中
;--------------------------------------------------------
;表格内容作为常量进行获取,仅对CSVOpenCache的可用...
;读取时会已常量形式存放在内存中(如果不经常更改的情况下建议放在QM的[@Startup]启动触发执行)
;修改CSV文件后可使用CSVOpenCache重新加载文件命令更新缓存内容
;通过以下去读相关内存中的表格常量值
[@测试]
#act
CSVOpenCache..\QuestDiary\Test.csv
SendMsg7TEST表格内第一行第二列值为:<$TEST(12)>
MovS1<$TEST(12)>
SendMsg51行2列的值为:<$STR(S1)><$TEST(12)>
传奇HAOM2翎风更新了CSV表格读取为常量形式进行操作!
来源:
作者:
点击:
近期更新
热门推荐

