Python 如何使点文件夹/文件在unity中可见?
我在unity中使用ironpython运行一些脚本和一些python包,在运行我得到的项目时:Python 如何使点文件夹/文件在unity中可见?,python,unity3d,Python,Unity3d,我在unity中使用ironpython运行一些脚本和一些python包,在运行我得到的项目时: OSException: cannot load library C:\Users\Sai\Documents\Work\Unity\Unity-Python-Demo-master\Assets\StreamingAssets\Lib\site-packages\numpy\.libs\libopenblas.SVHFG5YE3RK3Z27NVFUDAPL2O3W6IMXW.gfortran-wi
OSException: cannot load library C:\Users\Sai\Documents\Work\Unity\Unity-Python-Demo-master\Assets\StreamingAssets\Lib\site-packages\numpy\.libs\libopenblas.SVHFG5YE3RK3Z27NVFUDAPL2O3W6IMXW.gfortran-win32.dll
问题是unity隐藏了以点“.”开头的文件夹和文件。我怎样才能解决这个问题?其中一个包需要一个位于“.lib”文件夹中的文件,但它是隐藏的,我只能在资源管理器窗口中看到该文件夹,而不能在unity项目中看到
这是我的密码:
var engine = Python.CreateEngine();
ICollection<string> searchPaths = engine.GetSearchPaths();
#if UNITY_STANDALONE_WIN
searchPaths.Add(Application.dataPath);
searchPaths.Add(Application.dataPath + @"\StreamingAssets" + @"\Lib\");
searchPaths.Add(Application.dataPath + @"\StreamingAssets" + @"\Lib\site-packages\");
engine.SetSearchPaths(searchPaths);
dynamic py = engine.ExecuteFile(Application.dataPath + @"\StreamingAssets" + @"\Python\pt.py");
test = py.CTScan("Codemaker");
var-engine=Python.CreateEngine();
ICollection searchpath=engine.getsearchpath();
#如果团结赢了
searchpath.Add(Application.dataPath);
添加(Application.dataPath++“\StreamingAssets++”\Lib\”;
添加(Application.dataPath++“\StreamingAssets++”\Lib\site packages\”;
engine.SetSearchPath(搜索路径);
动态py=engine.ExecuteFile(Application.dataPath++“\StreamingAssets++”\Python\pt.py”);
测试=py.CTScan(“代码生成器”);
如下图所示,.lib文件夹在项目中不可见:
显然没有办法强> 见: 隐藏资产 在导入过程中,Unity完全忽略资产文件夹(或其中的子文件夹)中的以下文件和文件夹:
- 隐藏文件夹
- 以“.”开头的文件和文件夹
- 以“~”结尾的文件和文件夹
- 名为cvs的文件和文件夹
- 扩展名为.tmp的文件
我想解决这个问题的办法应该是
- 将其预编译为插件DLL,在内部存储和提供这些文件,并使用它们
- 那么,请使用不同的文件夹名称
- 找到另一种向应用程序提供不在
文件夹中的文件的方法(例如,尝试改用,或者使用zip并在运行时解压缩)资产
只是一个一般性的旁注: 不要将字符串concat(
+“\”
)用于系统文件路径强>
而是直接使用更通用的方法,根据设备的操作系统插入正确的路径分隔符,例如
searchPaths.Add(Path.Combine(Application.streamingAssetsPath, "Lib", "site-packages"));
谢谢你的回答,问题是我不能准确地更改文件夹名称或其位置,我没有提供包的文件夹名称,ironpython会这样做,像那样存储这些文件,我不知道怎么做。