在 Java 中有一种方法可以从 Format 对象(或任何派生类)中检索格式字符串
在代码中:
Format f = new DecimalFormat("$0.00");
System.out.println(???);
有什么我可以用来获取 System.out.println(???); 打印“$0.00”。
我看着 toPattern(); 但该函数不会出现在抽象 Format 类中,我正在使用的变量可以是任何扩展 Format 的变量。
在 Java 中有一种方法可以从 Format 对象(或任何派生类)中检索格式字符串
在代码中:
Format f = new DecimalFormat("$0.00");
System.out.println(???);
有什么我可以用来获取 System.out.println(???); 打印“$0.00”。
我看着 toPattern(); 但该函数不会出现在抽象 Format 类中,我正在使用的变量可以是任何扩展 Format 的变量。
模式(如果有的话)取决于Format
. 不能保证 aFormat
甚至会使用模式进行格式化。
编辑:我不确定您要做什么,但是如果您需要保留一个 Format 实例,它是可序列化的。
我不确定你对代码有什么访问权限,但如果你在第一行应用这个小改动,你应该能够以这种方式获得你正在查看的信息:
DecimalFormat f = new DecimalFormat("$0.00");
System.out.println(f.toPattern());
恐怕没有这样的运气!你必须知道你正在处理哪个子类并调用适当的方法:-(
没有已知的直接方法可以从父 Format 执行此操作。因为模式实际上存在于格式层次结构的叶子(SimpleDateFormat、MessageFormat、ChoiceFormat、DecimalFormat);其中有 toPattern 方法。由于它似乎是约定,您可以通过反射获得它。