模块  java.logging
软件包  java.util.logging

Class Formatter

  • 已知直接子类:
    SimpleFormatterXMLFormatter

    public abstract class Formatterextends Object
    Formatter支持格式化LogRecords。

    通常,每个日志记录处理程序都有一个与之关联的Formatter。 Formatter采用LogRecord并将其转换为字符串。

    某些格式化程序(例如XMLFormatter)需要在一组格式化记录周围包装head和tail字符串。 getHeader和getTail方法可用于获取这些字符串。

    从以下版本开始:
    1.4
    • 构造方法详细信息

      • Formatter

        protected Formatter()
        构造一个新的格式化程序。
    • 方法详细信息

      • format

        public abstract String format​(LogRecord record)
        格式化给定的日志记录并返回格式化的字符串。

        生成的格式化字符串通常包含LogRecord消息字段的本地化和格式化版本。 建议使用formatMessage(java.util.logging.LogRecord)便捷方法来本地化和格式化消息字段。

        参数
        record - 要格式化的日志记录。
        结果
        格式化的日志记录
      • getHead

        public String getHead​(Handler h)
        返回一组格式化记录的标题字符串。

        此基类返回一个空字符串,但这可能会被子类覆盖。

        参数
        h - 目标处理程序(可以为null)
        结果
        标题字符串
      • getTail

        public String getTail​(Handler h)
        返回尾部字符串以获取一组格式化记录。

        此基类返回一个空字符串,但这可能会被子类覆盖。

        参数
        h - 目标处理程序(可以为null)
        结果
        尾弦
      • formatMessage

        public String formatMessage​(LogRecord record)
        从日志记录中本地化和格式化消息字符串。 提供此方法是为了方便Formatter子类在执行格式化时使用。

        消息字符串首先使用记录的ResourceBundle本地化为格式字符串。 (如果没有ResourceBundle,或者找不到消息键,则将该键用作格式字符串。)格式String使用java.text样式格式。

        • 如果没有参数,则不使用格式化程序。
        • 否则,如果字符串包含“{<digit>”,其中<digit>在[0-9]中,则使用java.text.MessageFormat格式化字符串。
        • 否则不执行格式化。
        参数
        record - 包含原始消息的日志记录
        结果
        本地化和格式化的消息