Dymola mos脚本:获取当前目录

问题描述 投票:1回答:1

[在mos脚本中,我想将当前目录(即mos脚本所在的目录)保存到字符串变量。第二步,我想打开一个位于mos文件目录网络中的库。

我这样尝试过:

myCWD = Modelica.Utilities.System.getWorkDirectory();

但是它将始终具有值C:\USERNAME\Documents\Dymola

是否有一种方法可以从mos脚本中获取mos文件本身的路径?还是有更好的方法来使用相对路径,或从相对路径(但始终相对于mos文件)构造绝对路径?

scripting filepath dymola
1个回答
1
投票

cd返回Dymolas工作目录,因此它可以正常工作。我不是用mos脚本来解决您的问题,而是通过内置函数classDirectory()的Dymola可以满足您的要求。

这里是一个最小的示例:

function myScript
algorithm 
  Modelica.Utilities.Streams.print(classDirectory());
end myScript;

注意,在大多数情况下,Dymola中的函数可以替换mos脚本。通常,您可以简单地将mos脚本内容复制到函数的算法部分,然后调用该函数。

© www.soinside.com 2019 - 2024. All rights reserved.