/// <summary>
/// 打印类
/// </summary>
class TextShowClass
{
#region 文本框操作
#endregion
public static void Log(string message)
{
try
{ //获取启动了应用程序的可执行文件的路径
string path6 = System.Windows.Forms.Application.StartupPath;
string logFileName = path6 + DateTime.Now.ToString("yyyy-MM-dd") + ".log";
using (TextWriter logFile = TextWriter.Synchronized(File.AppendText(logFileName)))
{
logFile.WriteLine("\r\n");
logFile.WriteLine(DateTime.Now);
logFile.WriteLine(message);
logFile.Flush();
logFile.Close();
}
}
catch (System.Exception ex)
{
throw ex;
}
}
}
多线程 配置文件使用
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace JavaBackground
{
/// <summary>
/// 打印类
/// </summary>
class TextShowClass
{
#region 文本框操作
public static object objlock = new object();
#endregion
// private Object obj = new Object();
public static void Log(string message)
{
try
{
if (Frm_Main.Journal)//配置文件开启
{
lock (objlock) //加锁 多线成使用
{
//订单支付,消息通知等耗时的操作
//获取启动了应用程序的可执行文件的路径
string path6 = System.Windows.Forms.Application.StartupPath;
string logFileName = path6 + DateTime.Now.ToString("yyyy-MM-dd") + ".log";
using (TextWriter logFile = TextWriter.Synchronized(File.AppendText(logFileName)))
{
logFile.WriteLine("\r\n");
logFile.WriteLine(DateTime.Now);
logFile.WriteLine(message);
logFile.Flush();
logFile.Close();
}
}
}
}
catch (System.Exception ex)
{
System.Windows.Forms.MessageBox.Show(ex.Message);
}
//finally
//{
// //退出写入模式,释放资源占用
// //注意:一次请求对应一次释放
// //若释放次数大于请求次数将会触发异常[写入锁定未经保持即被释放]
// //若请求处理完成后未释放将会触发异常[此模式不下允许以递归方式获取写入锁定]
// //Frm_Main. LogWriteLock.ExitWriteLock();
//}
}
}
}