2016-04-22 194 views
0

在宏我写,我想结果从导出插件采用以下结构:ImageJ的宏路径问题

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

其中的fileid是一种简单的文件的名称从数组中拉出(即“cell_1”)。

在调试控制台,savePath读取“C:\用户\主\目录... \ FILE.CSV”(即它显示为正确指定),但没有文件是文件夹中指定的输出。而是将其作为名为“savePath”的文件输出到ImageJ Plugins文件夹中。不过,我手动插入评论里面的路径名使用“\”作为分隔符,它的工作原理。

据我所知,没有关于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”)。

在这个问题上的任何帮助或解决方法将不胜感激!

回答

1

事实证明这是多与路径名的格式的问题。路径名包含一个ImageJ难以识别的空间。将来,我将避免在我的文件夹和文件名中使用空格。此外,输出宏的正确格式为

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

输入变量时使用“+ ... +”。