Haxe编译C++项目中sys.io.File与sys.FileSystem操作失败问题
Haxe/HaxeFlixel Windows C++编译项目文件操作异常
所有编译为Windows平台C++程序的Haxe/HaxeFlixel项目,此前运行正常,近期突然出现文件删除或覆盖异常,且在Haxe 4.1.5和4.3.1版本中均存在该问题。
问题一:文件删除失败
- 操作逻辑:通过
lime.ui.FileDialog选择目标文件夹,递归遍历筛选出后缀为~的文件,将符合条件的文件路径存入数组,确认后调用sys.FileSystem.deleteFile执行删除 - 异常表现:删除操作始终失败,报错
Could not delete (path);即使通过sys.FileSystem.exists验证文件确实存在,且这些文件可在Windows文件资源管理器中正常删除
问题二:文件覆盖失败
- 操作逻辑:在自定义对话工具中,通过
lime.ui.FileDialog选择保存路径,调用sys.io.File.saveContent存储JSON数据 - 异常表现:保存新文件时正常,但覆盖已有文件时始终失败,报错
[file_open,(path)];其他场景下这两个API均可正常工作
备注
- 问题涉及的代码段未使用HaxeFlixel相关库
- 已将
lime.ui.FileDialog返回的反斜杠路径替换为正斜杠
内容的提问来源于stack exchange,提问作者WeegeeDatBagel
相关产品推荐
相关产品推荐

