All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.ibm.icu.text.FormattedValue Maven / Gradle / Ivy

Go to download

International Component for Unicode for Java (ICU4J) is a mature, widely used Java library providing Unicode and Globalization support

There is a newer version: 76.1
Show newest version
// © 2018 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html
package com.ibm.icu.text;

import java.text.AttributedCharacterIterator;

import com.ibm.icu.util.ICUUncheckedIOException;

/**
 * An abstract formatted value: a string with associated field attributes.
 * Many formatters format to classes implementing FormattedValue.
 *
 * @author sffc
 * @stable ICU 64
 */
public interface FormattedValue extends CharSequence {
    /**
     * Returns the formatted string as a Java String.
     *
     * Consider using {@link #appendTo} for greater efficiency.
     *
     * @return The formatted string.
     * @stable ICU 64
     */
    @Override
    public String toString();

    /**
     * Appends the formatted string to an Appendable.
     * 

* If an IOException occurs when appending to the Appendable, an unchecked * {@link ICUUncheckedIOException} is thrown instead. * * @param appendable The Appendable to which to append the string output. * @return The same Appendable, for chaining. * @throws ICUUncheckedIOException if the Appendable throws IOException * @stable ICU 64 */ public A appendTo(A appendable); /** * Iterates over field positions in the FormattedValue. This lets you determine the position * of specific types of substrings, like a month or a decimal separator. * * To loop over all field positions: * *

     *     ConstrainedFieldPosition cfpos = new ConstrainedFieldPosition();
     *     while (fmtval.nextPosition(cfpos)) {
     *         // handle the field position; get information from cfpos
     *     }
     * 
* * @param cfpos * The object used for iteration state. This can provide constraints to iterate over * only one specific field; see {@link ConstrainedFieldPosition#constrainField}. * @return true if a new occurrence of the field was found; * false otherwise. * @stable ICU 64 */ public boolean nextPosition(ConstrainedFieldPosition cfpos); /** * Exports the formatted number as an AttributedCharacterIterator. *

* Consider using {@link #nextPosition} if you are trying to get field information. * * @return An AttributedCharacterIterator containing full field information. * @stable ICU 64 */ public AttributedCharacterIterator toCharacterIterator(); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy