Godot读取json配置文件

概述

在Godot 4.3中读取JSON配置文件,可以通过以下步骤实现:

步骤说明

  1. 读取文件内容 :使用FileAccess类打开并读取JSON文件。

  2. 解析JSON数据 :使用JSON类解析读取到的文本内容。

  3. 错误处理:处理文件不存在或JSON格式错误的情况。

编码

python 复制代码
extends Node

func _ready():
    var config_data = load_config()
    if config_data:
        print("配置加载成功:", config_data)
    else:
        print("配置加载失败")

func load_config():
    # 打开文件
    var file = FileAccess.open("res://config.json", FileAccess.READ)
    if not file:
        push_error("无法打开配置文件!")
        return null

    # 读取文本内容
    var content = file.get_as_text()
    file.close()  # 显式关闭文件

    # 解析JSON
    var json = JSON.new()
    var parse_error = json.parse(content)
    if parse_error != OK:
        push_error("JSON解析错误:%s(第%d行)" % [
            json.get_error_message(),
            json.get_error_line()
        ])
        return null

    # 返回解析后的数据(字典或数组)
    return json.data
  1. 文件路径

    • res://:项目资源目录,适用于只读配置文件。

    • user://:用户数据目录,适用于可写入的配置。

  2. 错误处理

    • 使用FileAccess.open()时检查返回值,确保文件存在。

    • 解析JSON时检查parse()的返回值,捕获语法错误。

  3. 数据结构

    • JSON对象会被转换为GDScript的Dictionary

    • JSON数组会被转换为Array

相关推荐
我的offer在哪里5 小时前
示例 Unity 项目结构(Playable Game Template)
unity·游戏引擎
淡海水7 小时前
【节点】[Branch节点]原理解析与实际应用
unity·游戏引擎·shadergraph·图形·branch
Zik----10 小时前
简单的Unity漫游场景搭建
unity·游戏引擎
小李也疯狂2 天前
Unity 中的立方体贴图(Cubemaps)
unity·游戏引擎·贴图·cubemap
呆呆敲代码的小Y2 天前
【Unity工具篇】| 超实用工具LuBan,快速上手使用
游戏·unity·游戏引擎·unity插件·luban·免费游戏·游戏配置表
EQ-雪梨蛋花汤2 天前
【Unity优化】Unity多场景加载优化与资源释放完整指南:解决Additive加载卡顿、预热、卸载与内存释放问题
unity·游戏引擎
我的offer在哪里2 天前
用 Unity 从 0 做一个「可以玩的」游戏,需要哪些步骤和流程
游戏·unity·游戏引擎
泡泡茶壶ᐇ2 天前
Unity游戏开发入门指南:从零开始理解游戏引擎核心概念
unity·游戏引擎
Var_al2 天前
抖小Unity WebGL分包命令行工具实践指南
unity·游戏引擎·webgl
天人合一peng2 天前
unity 通过代码修改button及其名字字体的属性
unity·游戏引擎