基础说明
默认服务地址为:
http://localhost:27000/Api/PvfUtiltiy/
README 中有少量接口路径写作 /Api/PvfUtility/,实际调用时请按当前软件版本暴露的路由为准;本文保留原始路径拼写,便于兼容旧插件。
使用前提pvfUtility 已启动,并已打开目标 PVF。
调用方式GET 查询类接口,POST 批量或写入类接口。
编码建议中文路径、带斜杠参数、保存路径建议 URL 编码。
返回结构
{
"Data": {},
"IsError": false,
"Msg": null,
"ErrorId": 0
}
Data 是业务数据;IsError/ErrorId 表示错误状态;Msg 返回错误说明或提示。部分旧接口可能没有 ErrorId。
读取与解析接口
| 方法 | 接口 | 用途 | 参数 / 请求体 |
|---|---|---|---|
| GET | /getVersion | 获取 pvfUtility 版本号,用于判断接口兼容性。 | 无参数。 |
| GET | /getPvfRootDirectory | 获取 PVF 根目录列表。 | 无参数。版本要求:2022.9.30.2+ |
| GET | /GetFileList | 获取指定目录下的文件列表。 | dirName 目录名;returnType 返回形式;fileType 后缀过滤,版本要求 2022.08.08.2+ |
| GET | /GetFileContent | 读取单个 PVF 文件内容。 | filePath 文件路径;useCompatibleDecompiler 是否兼容反编译;encodingType 文本编码。 |
| POST | /GetFileContents | 批量读取多个文件内容。 | JSON:{"FileList":[],"UseCompatibleDecompiler":false,"EncodingType":null} |
| GET | /getFileData | 以结构化 JSON 节点树返回 PVF 文件数据。 | filePath 文件路径。返回节点包含 SectionName、DataType、Value、Children。 |
| GET | /GetAllLstFileList | 获取主要 LST 文件列表。 | 无参数。 |
写入与删除接口
| 方法 | 接口 | 用途 | 参数 / 请求体 |
|---|---|---|---|
| GET | /DeleteFile | 删除单个文件。 | filePath 文件路径。 |
| POST | /DeleteFiles | 批量删除文件。 | 请求体:文件路径数组,例如 ["equipment/a.equ"]。 |
| POST | /ImportFile | 新增或覆盖单个文件内容。 | 查询参数 filePath;请求体直接传文件文本内容。 |
| POST | /ImportFiles | 批量新增或覆盖文件内容。 | JSON 数组:[{"FilePath":"路径","FileContent":"内容"}]。 |
注意:写入、覆盖、删除前建议先备份 PVF,并在工具侧做二次确认。
界面状态与定位接口
| 方法 | 接口 | 用途 | 参数 / 请求体 |
|---|---|---|---|
| GET | /GetTreeListFocusedFilePath | 获取文件资源管理器当前焦点文件路径。 | 无参数。 |
| GET | /GetSearchPanelTreeListFocusedFilePath | 获取查找面板资源树当前焦点文件路径。 | 无参数。 |
| GET | /GetActiveDocumentFilePath | 获取当前正在编辑的文档文件路径。 | 无参数。 |
| GET | /GetTreeSelectedFiles | 获取文件资源管理器选中文件集合。 | 无参数。 |
| GET | /GetSearchPanelSelectedFiles | 获取查找面板选中文件集合。 | 无参数。 |
| GET | /FileIsExists | 判断文件是否存在。 | filePath 文件路径。 |
| GET | /folderExists | 判断文件夹或文件是否存在。 | filePath 路径。版本要求:2022.11.11.1+ |
| GET | /goToTreeListNode | 跳转到资源管理器节点,可选择打开编辑器。 | filePath 文件路径;openTextDocument 传 1 时打开编辑器。 |
封包、搜索与路径转换
| 方法 | 接口 | 用途 | 参数 / 请求体 |
|---|---|---|---|
| POST | /FileListToLstRows | 将文件路径集合转换为 LST 行字典;没有在 LST 注册的文件不会返回。 | 请求体:文件路径数组。 |
| GET | /SaveAsPvfFile | 将当前 PVF 另存为新封包文件。 | filePath 保存路径。中文路径需要 URL 编码。 |
| GET | /GetPvfPackFilePath | 获取当前载入的封包文件路径。 | 无参数。 |
| POST | /SearchPvf | 搜索 PVF 文件或内容。 | README 原始文档中该接口为 POST,按软件搜索面板参数传入。 |
物品、LST 与字符串表接口
| 方法 | 接口 | 用途 | 参数 / 请求体 |
|---|---|---|---|
| GET | /GetItemInfo | 根据文件路径获取物品名称和物品代码。 | filePath 文件路径。 |
| POST | /GetItemInfos | 批量获取物品名称和物品代码。 | 请求体:文件路径数组。 |
| GET | /ItemCodeToFileInfo | 使用物品代码转换文件信息。 | lstNames LST 名称,多个用英文逗号;itemCode 物品代码。 |
| POST | /ItemCodesToFileInfos | 批量使用物品代码转换文件信息。 | JSON:{"lstNames":["equipment","stackable"],"ItemCodes":[1251,27098]} |
| GET | /getLstFileInfo | 获取 LST 文件信息字典。 | filePath,如 equipment/equipment.lst。版本要求:2022.11.6.1+ |
| GET | /getStringTable | 获取 stringtable.bin 明文字符串表数据。 | 无参数。版本要求:2022.11.11.1+ |
使用 lstNames 时,不要同时混传不同职业技能 LST,例如 skill/swordman 和 skill/fighter 可能存在重复编号。
图标与资源预览接口
| 方法 | 接口 | 用途 | 参数 / 请求体 |
|---|---|---|---|
| GET | /getFileIcon | 获取文件图标 Base64,可用于开发预览插件。 | filePath 文件路径。版本要求:2022.9.30.2+ |
| POST | /filesToIconBase64 | 批量通过文件路径获取图标 Base64。 | 请求体:文件路径数组。版本要求:2023.3.9.1+ |
频率限制:getFileIcon 不要高频访问,README 中提示约 0.5 秒只允许一次。
调用注意
- 涉及中文路径、Windows 完整路径或带
/的lstNames时,请做 URL 编码。 - 批量读取、批量图标、批量物品信息优先使用 POST 批量接口,减少重复请求。
- AI 工具读取推荐下载 Markdown,内容可直接给AI读取,更结构化。