如何在Godot中通过GDScript接收系统参数打开.ccc文件
在Godot中通过GDScript实现双击.ccc文件自动打开
当系统将.ccc文件关联到你的Godot程序后,双击文件时系统会把文件路径作为命令行参数传递给程序。你只需要在GDScript中读取这些参数,就能自动加载目标文件。
核心实现代码
在程序的主场景脚本(比如Main.gd)的_ready()函数中添加以下逻辑:
func _ready(): # 获取所有命令行参数 var cmd_args = OS.get_cmdline_args() # 过滤出有效的.ccc文件路径:正常双击场景下参数数量至少为2(程序路径+文件路径) if cmd_args.size() >= 2: var target_path = cmd_args[1] # 校验文件扩展名(忽略大小写) if target_path.get_extension().to_lower() == "ccc": # 调用你已有的读取.ccc文件的函数 load_ccc_file(target_path) else: print("Error: Not a valid .ccc file - ", target_path) # 替换为你已实现的.ccc文件读取逻辑 func load_ccc_file(file_path: String): var file = FileAccess.open(file_path, FileAccess.READ) if file: # 这里写你的文件解析逻辑,比如读取二进制或文本内容 var file_content = file.get_as_text() print("Successfully loaded .ccc file: ", file_path) # 后续处理内容的代码... file.close() else: print("Failed to open file: ", file_path)
关键注意事项
- 平台兼容性:Windows、macOS、Linux平台下,双击文件传递的路径通常是命令行参数的第2个元素(索引1),少数特殊场景可能需要额外判断,但绝大多数情况适用。
- 编辑器测试:在Godot编辑器中测试时,可以通过
运行 > 编辑运行配置,在“命令行参数”栏填入一个.ccc文件的绝对路径,模拟双击打开的场景。 - 打包后验证:程序打包完成后,确保系统的文件关联已正确设置(部分Windows版本可能需要重启资源管理器才能生效)。
内容的提问来源于stack exchange,提问作者stepic Game
相关产品推荐
相关产品推荐

