Posted by
Michael Schmid on
Feb 24, 2010; 3:20pm
URL: http://imagej.273.s1.nabble.com/getFileList-Issue-tp3689201p3689202.html
Hi Matt,
the culprit is the String with the directory. In String literals
(Strings with quotes), the backslash is used for inserting special
characters. If you want to have a backslash in a String, you have to
type two backslashes: \\
In "C:\Users\Matt\Desktop\Matt\" the last Backslash is interpreted as
"The following character should be taken as a special character of
the String: Put a quote character into the String"
So, the closing parenthesis and the semicolon are still part of the
String, and not interpreted as program text.
You need:
dir = getDirectory("C:\\Users\\Matt\\Desktop\\Matt\\");
Michael
________________________________________________________________
On 24 Feb 2010, at 15:21, Matt TLAB wrote:
> I am attempting to write a macro that will act as a particle
> counter (I am
> counting trichomes on plant leaves). My experience with ImageJ
> programming
> is pretty limited. I want the macro to count particles on all of
> the images
> in a folder. It seems that my macro is not even getting to the
> point where
> it is executing the particle analysis. When I run the macro I get
> this
> error message:
> ')' expected in line 4.
> <list> = getFileList(dir);
>
> Here is the code that I have written (up until the commands for the
> actual
> particle analysis):
> macro "Particle Count" {
> dir = getDirectory("C:\Users\Matt\Desktop\Matt\");
> list = getFileList(dir);
> if (getVersion>="1.40e")
> setOption("display labels", true);
> setBatchMode(true);
> for (i=0; i<list.length; i++) {
> path = dir+list[i];
> showProgress(i, list.length);
> if (!endsWith(path,"/")) open(path);
> if (nImages>=1)
>
>
> Any suggestions?
>
> Thanks,
> Matt
> --
> View this message in context:
http://n2.nabble.com/getFileList-
> Issue-tp4626046p4626046.html
> Sent from the ImageJ mailing list archive at Nabble.com.