Most visited

Recently visited

Added in API level 1

StreamHandler

public class StreamHandler
extends Handler

java.lang.Object
   ↳ java.util.logging.Handler
     ↳ java.util.logging.StreamHandler
Known Direct Subclasses


基于流的日志记录 Handler

这主要是作为用于实现其他日志记录 Handlers的基类或支持类。

LogRecords发布到给定的 java.io.OutputStream

配置:默认情况下,每个StreamHandler都使用以下LogManager配置属性进行初始化。 如果属性未定义(或者具有无效值),则使用指定的默认值。

Summary

Public constructors

StreamHandler()

创建一个 StreamHandler ,没有当前输出流。

StreamHandler(OutputStream out, Formatter formatter)

用给定的 Formatter和输出流创建一个 StreamHandler

Public methods

void close()

关闭当前的输出流。

void flush()

刷新所有缓冲的消息。

boolean isLoggable(LogRecord record)

检查这个 Handler是否真的会记录给定的 LogRecord

void publish(LogRecord record)

格式化并发布 LogRecord

void setEncoding(String encoding)

设置(或更改)此 Handler使用的字符编码。

Protected methods

void setOutputStream(OutputStream out)

更改输出流。

Inherited methods

From class java.util.logging.Handler
From class java.lang.Object

Public constructors

StreamHandler

Added in API level 1
StreamHandler ()

创建一个 StreamHandler ,没有当前输出流。

StreamHandler

Added in API level 1
StreamHandler (OutputStream out, 
                Formatter formatter)

用给定的 Formatter和输出流创建一个 StreamHandler

Parameters
out OutputStream: the target output stream
formatter Formatter: Formatter to be used to format output

Public methods

close

Added in API level 1
void close ()

关闭当前的输出流。

Formatter的“尾部”字符串在关闭之前写入流中。 另外,如果Formatter的“head”字符串尚未写入流中,它将写入“tail”字符串之前。

Throws
SecurityException if a security manager exists and if the caller does not have LoggingPermission("control").

flush

Added in API level 1
void flush ()

刷新所有缓冲的消息。

isLoggable

Added in API level 1
boolean isLoggable (LogRecord record)

检查这个 Handler是否会记录给定的 LogRecord

此方法检查LogRecord是否具有适当的级别以及它是否满足任何Filter 如果还没有分配输出流或者LogRecord为空,它也会返回false。

Parameters
record LogRecord: a LogRecord
Returns
boolean true if the LogRecord would be logged.

publish

Added in API level 1
void publish (LogRecord record)

格式并发布 LogRecord

StreamHandler首先检查是否有OutputStream以及给定的LogRecord是否至少具有所需的日志级别。 如果不是,它会默默返回。 如果是这样,它会调用任何关联的Filter来检查记录是否应该发布。 如果是这样,它会调用它的Formatter格式化记录,然后将结果写入当前输出流。

如果这是要写入给定 OutputStream第一 LogRecord,被写入 LogRecordFormatter的‘头部’字符串写入流。

Parameters
record LogRecord: description of the log event. A null record is silently ignored and is not published

setEncoding

Added in API level 1
void setEncoding (String encoding)

设置(或更改)此 Handler使用的字符编码。

之前的任何 LogRecords被写入 Handler的编码应设置。

Parameters
encoding String: The name of a supported character encoding. May be null, to indicate the default platform encoding.
Throws
SecurityException if a security manager exists and if the caller does not have LoggingPermission("control").
UnsupportedEncodingException if the named encoding is not supported.

Protected methods

setOutputStream

Added in API level 1
void setOutputStream (OutputStream out)

更改输出流。

如果存在当前输出流,则写入Formatter的尾部字符串,并刷新并关闭该流。 然后输出流被替换为新的输出流。

Parameters
out OutputStream: New output stream. May not be null.
Throws
SecurityException if a security manager exists and if the caller does not have LoggingPermission("control").

Hooray!