如何获取当前项目文件的路径?如果我在项目中有一个脚本(或者可能是在项目外部的脚本中引用该项目),如何获取项目在磁盘上保存位置的文件路径?我有兴趣使用 JSL 来完成此操作,而不是交互方式。
自动化和脚本编写视窗Re: 如何获取当前项目文件的路径?基于沉默,我猜测这可能不会(轻易)实现?
Re: 如何获取当前项目文件的路径?我没有找到 JMP 项目特有的功能。 项目也没有路径变量。 您可以自由地将项目保存在任何您喜欢的地方。 它是一种 JMP 文件,因此当您打开或保存项目时,JMP 将从最后一个目录开始。 您可以使用 Get Default Directory() 函数获取此信息。

Re: 如何获取当前项目文件的路径?我也为此苦苦挣扎。 即使有可能,它也无法满足我想要做的事情,因为项目中的文件是按需解压的,而不是在项目首次打开时解压的。 我的用例需要项目中资源的文件路径......它将转到外部程序。 我最终使用 loadtextfile(proj file name)/savetextfile($temp/name) 并发送临时文件名。
将项目用于项目- Audio.jsl 将文件传递给 powershell 进行播放。
你想做什么?
Re: 如何获取当前项目文件的路径?
你想做什么?
这是一个很好的问题,也许我应该在最初的问题中回答这个问题。在处理项目时,有时能够快速复制项目路径以打开包含的文件夹以查看其他关联文件或将链接存储在我的笔记中或发送给同事会很有帮助。这是许多代码编辑器和办公套件软件中相对常见且有用的功能。当然,您可以通过其他方式浏览到文件,但这对我来说是一个足够常见的任务,因此有一种快速方法很方便,不需要我每次都在心里解析我的文件组织结构。谢谢你的时间!
Re: 如何获取当前项目文件的路径?感谢您查看这个。我很幸运在裸脚本中使用 Get Default Directory() ,但是当脚本保存在项目中时,它只返回项目文件内的路径,而不是存储项目的位置:
Get Default Directory() = "jmpprj://contents/";
Re: 如何获取当前项目文件的路径?@亚伦_安德森, @朱利安- 他是对的;我过去曾求助于使用文件->另存为来发现路径。 主窗口的最近文件列表更好,提供复制路径和打开包含窗口。 也许这些也可以在数据表、脚本和项目窗口上公开。 标题栏上的系统弹出窗口可能是文件菜单的替代方案。
我认为项目可能是 JSL 的一个特例;数据表和脚本已经可以获取它们的路径。
Re: 如何获取当前项目文件的路径?
@Craige_Hales写道:
@亚伦_安德森, @朱利安- 他是对的;我过去曾求助于使用文件->另存为来发现路径。
是的,我有时也用过它。据我记得,如果您在打开项目文件后没有保存它,它将无法工作。
主窗口的最近文件列表更好,提供复制路径和打开包含窗口。
啊,这至少是一个不错的解决方法。谢谢。
也许这些也可以在数据表、脚本和项目窗口上公开。 标题栏上的系统弹出窗口可能是文件菜单的替代方案。
我认为项目可能是 JSL 的一个特例;数据表和脚本已经可以获取它们的路径。
在某些菜单中拥有此功能会很棒。如果也可以通过 JSL 获得,那就更好了。
回复:如何获取当前项目文件的路径?迟做总比不做好(我希望),我认为您正在寻找的是项目本身的项目文件路径()消息。
从项目外部来看:
project = Open( "$SAMPLE_PROJECTS/Big Class.jmpprj" );
path = project << project file path();
或者在项目内部使用此项目():
project = Open( "$SAMPLE_PROJECTS/Big Class.jmpprj" );
project << Run Script(
// this line should work from any JSL script executed from within the project
path = this project() << project file path()
);
回复:如何获取当前项目文件的路径?嗨亚伦,
迟做总比不做好!“项目文件路径”是 JMP 18 的新功能吗?当我在 JMP 17 中运行脚本时,我得到:
Object 'Project' does not recognize the message 'project file path'; perhaps you mean one of these: <<<<<<<<< re>Thanks,Austin
回复:如何获取当前项目文件的路径?事实证明,直到(未来的) JMP 18.2 才可用。
事实上,我似乎确实在今年早些时候在回答这个问题时添加了它,但错误地将它标记为自 JMP 14 以来就存在。然后我不知何故忘记了我已经这样做了,以至于几个月后再次遇到这个线程时,我去寻找解决方案并找到了我最近创建的解决方案(但我认为它比实际要老得多)。
很抱歉。
回复:如何获取当前项目文件的路径?// 我在从文件路径中删除文件名时遇到了类似的问题
名称默认为此处( 1 );
dt = 当前数据表();
current_file = dt << 获取路径();
当前目录 = Word([1 -2], 当前文件, "\");
// 返回完整字符串 ([1 -1]),除了最后一个单词 ([1 -2])
数据 = 选择文件(
“选择数据文件”,
当前目录,
{"Excel|csv","JMP 文件|jmp;jsl;jrn","所有文件|*"},
1、
0,
““, 多种的
(英文):
回复:如何获取当前项目文件的路径?啊,我喜欢这个故事。不用担心。我只能笑,因为这听起来就像我会做的事情。我曾多次编写函数来解决问题,却发现我在6 个月前用不同的名字做了完全相同的事情……
无论如何,我很高兴听到该功能正在开发中!
回复:如何获取当前项目文件的路径?你好,现在我们有 JMP 18.2。
在哪里可以查询?
回复:如何获取当前项目文件的路径?在 JSL 中。
path = this project() << project file path();
show(path);
在 19EA 中测试。