C 實現程式單例日誌輸出功能

2022-09-26 04:00:11 字數 1205 閱讀 5524

對於乙個完整的程式系統,乙個日誌記錄是必不可少的。可以用它來記錄程式在執行過程中的執行狀態和報錯資訊。比如,那些不想通過彈框提示的錯誤,程式執行過程中捕獲的異常等。

首先,在你的解決方案中,適當的目錄中新建乙個類,比如 logmanager:

編寫如下**:

///

/// 日誌管理

///

public class logmanager

// 私有建構函式(必備函式,不允許外部對該類進行例項化)

private logmanager()

///

/// 屬性獲取單例物件

///

public static logmanager loginstance

}/// &www.cppcns.comlt;summary>

/// 寫入一條日誌記錄

///

/// 日誌記錄內容

public void writelog(string plog)

\\log.log",_logdir,vdt.year,vdt.month,vdt.day);

// 建立檔案流,用於寫入

using (filestream fs = new filestream(vlogfile, filemode.append))

>> ", vdt.tostring("yyyy-mm-dd hh:mm:ss"),www.cppcns.com plog);

sw.flush();

sw.close();

fs.close();}}

}// 刪除過期檔案

private void deloldfile()

var vfiles = (new directoryinfo(this._logdir)).getfiles();

for (int i = vfiles.length - 1; i >= 0; i--)

} }}

} // end class

其中,第8行-第26行是關於實現單例模式的一種方法。這樣,在你程式的需要位置執行:

logmanager.loginstance.writelog("產生了一條日誌記錄");

就會在指定檔案中引數一條日誌記錄了。

即:2016-11-23 23:53:45  >>  產生了一條日誌記錄

本文標題: c#實現程式單例日誌輸出功能

本文位址:

WPF程式單例實現

大家肯定碰到過不少程式在乙個機器上只能啟動一次的吧 比如傲遊,windows media player等等 而在wpf應用程式如何實現這個功能呢?具體實現如下 在建立wpf應用程式後 1protected override void onstartup startupeventargs e 219 ...

c 單例實現

1.物件指標實現 class singleton unlock return m pinstance int getdata const private singleton m test 888 class cgarbo cgarbo static cgarbo m garbo static sin...

c 實現單例

單例巨集 單件定義巨集 在標頭檔案中申明 declare singleobj csampleclass 在cpp檔案中定義靜態變數 implement singleobj csampleclass 注意單件的getinstance為非執行緒安全,最好是在主線程初始化的時候呼叫一次 define de...