从其他文件(不是 jsl 文件)获取当前目录路径<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />嗨,大家好:)
小而重要的问题,
我希望提取脚本中使用的表的目录路径...
需要明确的是:当我在代码中使用函数“get default directory()”时——它返回的路径是脚本文件而不是我在脚本中使用的数据表——(在开始时脚本正在“当前打开”并在当前数据表视图中的表)。
所以,问题是:
如何获取数据表的路径而没有脚本文件的路径
谢谢,爱丽儿
回复:从其他文件(不是 jsl 文件)获取当前目录路径欢迎。我发现数据表消息是这样的:
dt = open("$SAMPLE_DATA/big class.jmp");
显示属性(dt);
开始数据更新 [操作] [仅限脚本]
清除列选择 [操作] [仅限脚本]
重新编码 [动作] [仅限脚本]
...
复制多列属性 [操作] [仅限脚本]
粘贴多列属性 [操作] [仅限脚本]
获取标记行 [操作] [仅限脚本]
获取名称 [操作] [仅限脚本]
获取路径 [操作] [仅限脚本]
获取属性 [操作] [仅限脚本]
获取行状态 [操作] [仅限脚本]
获取行 [操作] [仅限脚本]
...
数据表是一个可编写脚本JMP 中的对象。显示属性功能适用于任何可编写脚本的对象。列表是数据表响应的消息集合。在 Help->Scripting Index 中有更多信息和类似的列表。

如果您知道关键字,例如“路径”,则可以缩小搜索范围:

脚本索引可以只搜索对象、只搜索函数、只搜索显示框,或者搜索所有这三者。在这种情况下,先选择对象,然后选择数据表,这样会更容易,因为有许多功能和显示框也知道一些关于路径的信息。
回复:从其他文件(不是 jsl 文件)获取当前目录路径谢谢!!,成功了
回复:从其他文件(不是 jsl 文件)获取当前目录路径dt = 当前数据表();
dt << 获取路径;
“C:\Users\...\Desktop\results 2.jmp”
回复:从其他文件(不是 jsl 文件)获取当前目录路径我有类似的问题。代码中的“get default directory()”函数是返回脚本文件的指向路径。如何获取“当前打开”的数据表方向路径。您之前关于“getpath”的回复是显示方向路径+文件名,但我的目的是获取没有文件名的方向路径,输出模板与“get default directory”相同。怎么办?期待你的回复。谢谢你。
回复:从其他文件(不是 jsl 文件)获取当前目录路径获得完整路径后,有许多不同的方法可以删除文件名。 下面是一个选项
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
cur_path = dt << Get Path;
path_as_list = Words(cur_path, "\/");
path_without_filename = Concat Items(Remove(path_as_list, -1), "/");
Show(cur_path);
//cur_path = "C:\Program Files\SAS\JMPPRO\16\Samples\Data\Big Class.jmp";
Show(path_without_filename);
//path_without_filename = "C:/Program Files/SAS/JMPPRO/16/Samples/Data";
可能有一个功能可以让您更轻松地做到这一点。 如果有的话,你应该能够从脚本索引的文件部分找到它

或者从这里JSL 语法参考 > JSL 函数、运算符和消息 > 文件函数,转换文件路径将是我的起点
回复:从其他文件(不是 jsl 文件)获取当前目录路径谢谢!
回复:从其他文件(不是 jsl 文件)获取当前目录路径这真的很有帮助。谢谢你!