【发布时间】:2019-06-30 17:38:25
【问题描述】:
我是宏开发(以及一般编程!)的初学者。 现在我想测试一个基本的循环函数来处理多个目录中的图像,并且在代码的最开始出现错误: 第 42 行中的语句不能以“{”开头。 我在下面的代码中指出了错误显示的那一行,如果代码太长,我深表歉意。
我拿出了打印功能。我仔细查看了空格等,但我使用了网上的示例模板,所以那里应该没有任何问题。 我在这个或任何其他论坛上找不到类似的问题。
FileName = getString("Enter the name of the 2-channel file in each folder", "RGB")
InputFileExt = getString("Enter the file extension", ".tif")
MainDir = getDirectory("Choose the Main Directory");
function processFolder(MainDir) {
dir = getFileList(MainDir);
for (i=0; i < dir.length; i++) { <---- error
print(dir[i] + FileName + InputFileExt)
if(File.isDirectory(MainDir + dir[i]))
processFolder("" + MainDir + dir[i]);
if(endsWith(dir[i] + FileName + InputFileExt)
processFile(dir[i] + FileName + InputFileExt);
}
}
function processFile (dir[i] + FileName + InputFileExt) {
run("Split Channels");
selectWindow("RGB.tif (blue)");
close();
selectWindow("RGB.tif (green).tif");
saveAs("Tiff", MainDir + File.separator + "Split channels" + File.separator + "RGB.tif (green).tif");
selectWindow("RGB.tif (red)");
saveAs("Tiff", MainDir + File.separator + "Split channels" + File.separator + "RGB.tif (red).tif");
close();
}
}
这只是为了测试代码是否识别了正确的图像和目录。它应该遍历每个文件夹中的 RGB 图像,将其拆分为 3 个通道,并将绿色和红色通道保存在找到图像的目录中的新文件夹中。 如果您可以在其余代码中发现任何其他明显的明显错误,我将很高兴听到它们 :) 谢谢!
【问题讨论】: