java.text.Format类的fromat 方法AttributedCharacterIterator formatToCharacterIterator(Object obj)  这个方法如何使用呀?  谁有例子呀,弄一各我看看(参数要自己写的一个类)

解决方案 »

  1.   

    Format 定义了编程接口,用于将语言环境敏感的对象格式化为 String(使用 format 方法)和将 String 重新分析为对象(使用 parseObject 方法)。 通常,一个 format 的 parseObject 方法必须能分析任何由其 format 方法格式化的字符串。不过,也可能存在不能分析的异常情况。例如,format 方法可能创建中间无分隔符的两个相邻整数,在这种情况下,parseObject 无法判断哪个数字属于哪个数。 子类化
    Java 2 平台为格式化日期、消息和数字分别提供了三个特殊的 Format 的子类:DateFormat、MessageFormat 和 NumberFormat。 具体的子类必须实现三个方法: format(Object obj, StringBuffer toAppendTo, FieldPosition pos) 
    formatToCharacterIterator(Object obj) 
    parseObject(String source, ParsePosition pos) 
    这些常规方法允许对对象进行多态分析和格式化,还可以被使用(如被 MessageFormat 使用)。子类通常也为特定的输入类型提供了另外的 format 方法,也为特定的结果类型提供了 parse 方法。当在输入文本的开始没有任何所需格式的文本时,则任何不带 ParsePosition 参数的 parse 方法都应该抛出 ParseException。 
    大多数子类还将实现以下工厂方法: getInstance 获取一个适合于当前语言环境的有用的格式对象 
    getInstance(Locale) 获取一个适合于指定语言环境的有用的格式对象。 
    此外,某些子类还可能为了更特殊的控制实现其它 getXxxxInstance 方法。例如,NumberFormat 类提供了 getPercentInstance 和 getCurrencyInstance 方法来获取特殊的数字格式化程序。 
    Format 的子类如果允许程序员能为不同语言环境(比如用 getInstance(Locale) )创建对象,必须实现以下类方法:
    public static Locale[] getAvailableLocales()
     最后子类可能定义一个常量集合来标识格式输出中的不同字段。这些常量用于创建一个 FieldPosition 对象,该对象标识字段中所包含的信息及其在格式化结果中的位置。这些常量应当命名为item _FIELD,其中item 标识了该字段。有关这些常量的例子,请参阅 ERA_FIELD 及其在 DateFormat 中的同类。 同步
    格式通常不是同步的。建议为每个线程创建独立的格式实例。如果多个线程同时访问一个格式,其它必须保持外部同步。 ==========================================================================
    format
    public final String format(Object obj)格式化一个对象以生成一个字符串。这等效于 
    format(obj, new StringBuffer(), new FieldPosition(0)).toString(); 参数:
    obj - 要格式化的对象 
    返回:
    格式化后的字符串。 
    抛出: 
    IllegalArgumentException - 如果该 Format 不能格式化给定的对象--------------------------------------------------------------------------------format
    public abstract StringBuffer format(Object obj,
                                        StringBuffer toAppendTo,
                                        FieldPosition pos)格式化一个对象,并将得到的文本追加到给定的字符缓冲区。如果 pos 参数标识了一个由 format 使用的字段,那么它的索引就设置为第一次出现的此类字段的起始和结束索引。 参数:
    obj - 要格式化的对象
    toAppendTo - 文本要追加的位置
    pos - 标识格式化文本中字段的一个 FieldPosition。 
    返回:
    追加了格式化文本并作为 toAppendTo 传入的字符串缓冲区。 
    抛出: 
    NullPointerException - 如果 toAppendTo 或 pos 为 null 
    IllegalArgumentException - 如果 Format 不能格式化给定的对象。