FileHandler 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
簡單的檔案記錄 Handler。
[Android.Runtime.Register("java/util/logging/FileHandler", DoNotGenerateAcw=true)]
public class FileHandler : Java.Util.Logging.StreamHandler
[<Android.Runtime.Register("java/util/logging/FileHandler", DoNotGenerateAcw=true)>]
type FileHandler = class
inherit StreamHandler
- 繼承
- 屬性
備註
簡單的檔案記錄 Handler。
它可以 FileHandler 寫入指定的檔案,或是寫入一組旋轉的檔案。
對於一組輪替檔案,當每個檔案達到一定大小限制時,會關閉、旋轉出去,並開啟一個新的檔案。 較舊的檔案名稱會透過在基礎檔名中加入「0」、「1」、「2」等。
預設情況下,IO 函式庫中會啟用緩衝,但每筆日誌記錄完成後會被清除。
預設情況下,該 XMLFormatter 類別用於格式化。
<b>配置:</b> 預設情況下,每個 FileHandler 配置皆使用以下 LogManager 配置屬性初始化,其中 <handler-name> 指的是處理器的完全限定類別名稱。 若屬性未定義(或值無效),則使用指定的預設值。
<烏爾><·李> &;handler-name>.level 指定 的 Handler 預設 層級(預設為 Level.ALL)。
</李><麗> &;handler-name>.filter 指定要使用的類別名稱 Filter (預設為 no Filter)。
例如,的屬性會是:FileHandlerul<>li< java.util.logging.FileHandler.level=INFO >/li<>li< java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter >/li<>/ul <>
對於自訂處理器,e.g. com.foo.MyHandler,屬性會是:<ul><li> com.foo.MyHandler.level=INFO </li><li> com.foo.MyHandler.formatter=java.util.logging.SimpleFormatter </li></ul>
一個模式由一個字串組成,包含以下特殊元件,這些元件會在執行時被替換:<ul><li “>/” 本地路徑名稱分隔符 </li><li> “%t”系統暫存目錄 </li><li>“%h”user.home“ 系統屬性<的值 /li><li> ”%g“用於區分旋轉日誌<的世代編號 /li><li> ”%u“唯一用於解決衝突<的數字 /li><li> “%%” 可翻譯為單百分號“%” </li></ul> 若未指定「%g」欄位且檔案數大於一,則產生檔案名稱末尾的點後會加上世代編號。
例如,「%t/java%g.log」的模式,計數為 2,通常會導致 Solaris 的日誌檔案寫入 /var/tmp/java0.log 和 /var/tmp/java1.log,而在 Windows 95 則通常寫入 C:\TEMP\java0.log 和 C:\TEMP\java1.log
世代編號依序為0、1、2等。
通常「%u」唯一欄位設為 0。 然而,如果嘗試 FileHandler 開啟檔名並發現該檔案目前被其他程序使用,則會遞增唯一編號欄位並重新嘗試。 此過程會重複,直到 FileHandler 找到目前未被使用的檔案名稱。 若存在衝突且未指定「%u」欄位,則會在檔名末尾點後加入該欄位。 (這會顯示在任何自動加入的世代號碼之後。)
因此,如果三個程序都嘗試登入 fred%u.%g.txt,那麼它們可能會在旋轉序列中使用 fred0.0.txt, fred1.0.txt, fred2.0.txt 作為其旋轉序列的第一個檔案。
請注意,使用唯一識別碼以避免衝突,只有在使用本地磁碟檔案系統時才能保證可靠運作。
在 1.4 版本加入。
Java 文件 java.util.logging.FileHandler。
本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。
建構函式
| 名稱 | Description |
|---|---|
| FileHandler() |
建立一個預設 |
| FileHandler(IntPtr, JniHandleOwnership) |
用於建立 JNI 物件受管理表示的建構器;由執行時呼叫。 |
| FileHandler(String, Boolean) |
初始化 a |
| FileHandler(String, Int32, Int32, Boolean) |
初始化 a |
| FileHandler(String, Int32, Int32) |
初始化 a |
| FileHandler(String) |
初始化 a |
屬性
| 名稱 | Description |
|---|---|
| Class |
傳回這個 |
| Encoding |
回傳此 |
| ErrorManager |
取得此處理器的 ErrorManager。 -或- 為此處理器定義一個錯誤管理器。 (繼承來源 Handler) |
| Filter |
取得這個 |
| Formatter |
退貨 |
| Handle |
基礎Android實例的句柄。 (繼承來源 Object) |
| JniIdentityHashCode |
取得由互通執行時指派給此 Java 對等端的身份雜湊碼。 (繼承來源 Object) |
| JniManagedPeerState |
簡單的檔案記錄 |
| JniPeerMembers |
取得用於調用此 Java 節點成員的 JNI 元資料。 |
| Level |
取得日誌層級,指定哪些訊息會被記錄。 |
| PeerReference |
取得這個 Java 節點的 JNI 物件參考。 (繼承來源 Object) |
| ThresholdClass |
此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。 |
| ThresholdType |
此 API 支援適用於 Android 的 Mono 基礎結構,並不適合直接從您的程式代碼使用。 |
方法
| 名稱 | Description |
|---|---|
| Clone() |
建立並傳回這個 對象的複本。 (繼承來源 Object) |
| Close() |
關閉目前的輸出流。 (繼承來源 StreamHandler) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
簡單的檔案記錄 |
| Dispose() |
釋放該 Java 節點所持有的資源。 (繼承來源 Object) |
| Dispose(Boolean) |
釋放該 Java 節點所持有的資源。 (繼承來源 Object) |
| DisposeUnlessReferenced() |
簡單的檔案記錄 |
| Equals(Object) |
簡單的檔案記錄 |
| Equals(Object) |
指出其他物件是否「等於」這個物件。 (繼承來源 Object) |
| Flush() |
清除所有緩衝訊息。 (繼承來源 StreamHandler) |
| GetHashCode() |
傳回此物件的雜湊碼值。 (繼承來源 Object) |
| IsLoggable(LogRecord) |
檢查一下這 |
| JavaFinalize() |
已淘汰.
當垃圾收集決定不再參考物件時,垃圾收集行程在 物件上呼叫。 (繼承來源 Object) |
| Notify() |
喚醒正在等候此物件監視器的單一線程。 (繼承來源 Object) |
| NotifyAll() |
喚醒正在等候此物件監視器的所有線程。 (繼承來源 Object) |
| Publish(LogRecord) |
格式化並發佈 |
| ReportError(String, Exception, Int32) |
一種受保護的方便方法,可以向此處理器的 ErrorManager 回報錯誤。 (繼承來源 Handler) |
| SetHandle(IntPtr, JniHandleOwnership) |
設定 Handle 屬性。 (繼承來源 Object) |
| SetOutputStream(Stream) |
改變輸出流。 (繼承來源 StreamHandler) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
簡單的檔案記錄 |
| ToArray<T>() |
從這個 Java 陣列包裝器建立一個受管理陣列。 (繼承來源 Object) |
| ToString() |
傳回物件的字串表示。 (繼承來源 Object) |
| UnregisterFromRuntime() |
將此 Java 節點從互通執行時中取消註冊。 (繼承來源 Object) |
| Wait() |
讓目前線程等候直到喚醒為止,通常是藉由em <notified/em>或<em>interrupted</em> 來喚醒它。<> (繼承來源 Object) |
| Wait(Int64, Int32) |
讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。 (繼承來源 Object) |
| Wait(Int64) |
讓目前的線程等到喚醒為止,通常是因為 <em>notified</em> 或 <em>interrupted</em>,或直到經過一定數量的實時為止。 (繼承來源 Object) |
明確介面實作
| 名稱 | Description |
|---|---|
| IJavaPeerable.Disposed() |
簡單的檔案記錄 |
| IJavaPeerable.Finalized() |
簡單的檔案記錄 |
| IJavaPeerable.JniObjectReferenceControlBlock |
簡單的檔案記錄 |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
簡單的檔案記錄 |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
簡單的檔案記錄 |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
簡單的檔案記錄 |
擴充方法
| 名稱 | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
取得實例 |
| JavaAs<TResult>(IJavaPeerable) |
試著強制 |
| JavaCast<TResult>(IJavaObject) |
執行 Android 執行時檢查型別轉換。 |
| JavaCast<TResult>(IJavaObject) |
簡單的檔案記錄 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
試著強制 |