图像J宏路径问题

ImageJ Macro Path Issue

本文关键字:问题 路径 图像      更新时间:2023-09-26

在我正在编写的宏中,我尝试使用以下结构从插件导出结果:

savePath = newfolder+"''"+fileid;
run("Export results", "filepath=savePath fileformat=[CSV (comma separated)]...;

其中 fileid 只是从数组中提取的文件的名称(即"cell_1")。

在调试控制台中,savePath 读取"C:''Users''Main''Directory...''file.csv"(即它看起来正确指定),但没有文件输出到指定的文件夹。相反,它作为名为"savePath"的文件输出到 ImageJ 插件文件夹中。但是,然后我使用"''"作为分隔符手动在注释中插入路径名,它起作用了。

我知道过去有一个关于 ImageJ 如何处理 '' 与 '' 和/的问题,但是我为此尝试了许多修复程序,但没有一个奏效。我尝试过的事情包括:

replace(savePath,"''","''''");

以及

var s = File.separator;
replace(savePath,"''",s);

replace(savePath,"''","/");

而且没有一个奏效。

有趣的是,我在序列中使用了另一个使用与 savePath 相同格式的宏,并且工作正常:

directory = getDirectory("Choose input directory");
newfolder=directory+fileid;
run("Image Sequence...", "open=newfolder file=act" );

同样,FileID 只是从数组中提取的文件的名称(即"cell_1")。

有关此问题的任何帮助或解决方法将不胜感激!

事实证明,

这更多的是路径名格式的问题。路径名包含一个空格,ImageJ很难识别。将来,我将避免在文件夹和文件名中使用空格。此外,导出宏的正确格式是

savePath = newfolder+"''"+fileid;
run("Export results", "filepath="+savePath+" fileformat=[CSV (comma separated)]...;

输入变量时使用"+...+"。