imageJ 宏中的字符串格式

Posted

技术标签:

【中文标题】imageJ 宏中的字符串格式【英文标题】:String format in imageJ macro 【发布时间】:2021-08-09 15:24:45 【问题描述】:

我想在 ImageJ / Fiji 宏编辑器中使用 String.format() 函数将整数转换为带有前导零的字符串。使用此代码:

s = String.format("%04d", 13);
print(s);

我收到以下错误:

Unrecognized String function in line 2
s = String . <format> ("%04d" , 13);

有什么想法吗?

在文档https://imagej.nih.gov/ij/developer/macro/functions.html#S 之后,这应该可以工作:

String.format(format, number) - 返回使用指定格式和数字的格式化字符串。

版本:ImageJ 1.53c 和 Java 1.8.0_172(64 位)

【问题讨论】:

我在(Fiji Is Just) ImageJ 2.1.0/1.53i; Java 1.8.0_172 [64-bit] 上遇到了另一个错误。对我来说它看起来像一个错误。您可以使用String.pad(n, length) 作为替代方案。它将添加前导零。 谢谢,不幸的是String.pad()pad 抛出了同样的错误。我最终使用了以下解决方法:s = toString(13); while (s.length() &lt; 4) s = "0" + s; 很高兴它解决了。尝试更新 ImageJ。发行说明中有一些关于 1.53g 中的 String.pad 【参考方案1】:

String.format 宏函数requires ImageJ 1.53d or newer。由于 ImageJ2 团队仍需要解决的 ImageJ 1.x 中的重大更改,斐济随附的 ImageJ 1.x 版本落后了几个版本。同时,您可以使用 Help > Update ImageJ... 命令更新与 Fiji 捆绑的 ImageJ 1.x 版本。请注意,下载所选版本后,此命令将硬退出正在运行的 ImageJ 实例。

【讨论】:

以上是关于imageJ 宏中的字符串格式的主要内容,如果未能解决你的问题,请参考以下文章

excel宏中的运行时错误424

OrientationJ:从 OrientationJ 向量场宏中保存结果的问题

excel宏中的部分单元格(或字符串)匹配

如何用C中#define宏中的字符串常量替换函数名

确保每个字符串文字都包含在宏中

有没有办法删除 C 宏中的引号?