using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace AGVSystem
{
public class WriteTxt
{
//private static object obj = new object();
//public static void writeTxt(string info)
//{
// lock (obj)
// {
// string path = Application.StartupPath + "\\log\\" + DateTime.Now.ToLongDateString() + ".txt";
// string str = DateTime.Now.ToLongTimeString() + info;
// if (!File.Exists(path))
// {
// FileStream fs1 = new FileStream(path, FileMode.Append, FileAccess.Write);
// StreamWriter sw = new StreamWriter(fs1);
// sw.WriteLine(str);
// sw.Close();
// fs1.Close();
// }
// else
// {
// FileStream fs1 = new FileStream(path, FileMode.Append, FileAccess.Write);
// StreamWriter sw = new StreamWriter(fs1);
// sw.Write(str + "\r\n");
// sw.Close();
// fs1.Close();
// }
// }
//}
private static object obj_saveLog1 = new object();
///
/// AGV读取的地标值记录
///
/// 日志文件路径
/// 文件名称
/// 线体名称
public static void SaveLog1(string fileMsg, string filename, string Assembly_name )
{
lock (obj_saveLog1)
{
try
{
using (FileStream _fStream = new FileStream(GetFilePath1(filename, Assembly_name) , FileMode.Append, FileAccess.Write))
{
using (StreamWriter _sWrite = new StreamWriter(_fStream))
{
_sWrite.WriteLine(GetCurrentTimeString() + fileMsg);
_sWrite.Close();
_fStream.Close();
}
}
}
catch (Exception)
{
SaveLog1(fileMsg, filename, Assembly_name);
}
}
}
private static string GetCurrentTimeString()
{
return "[" + DateTime.Now.ToLongTimeString() + "]:";//+ "." + DateTime.Now.Millisecond.ToString("000")
}
private static string GetFilePath1(string str, string Assembly_Name)
{
string path = Application.StartupPath + @"\log\" + DateTime.Now.ToString("yyyyMMdd")+@"\"+ Assembly_Name;
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
string pa = Application.StartupPath + @"\log\" + DateTime.Now.ToString("yyyyMMdd") + @"\" + Assembly_Name;
if (!Directory.Exists(pa))
{
Directory.CreateDirectory(pa);
}
return pa + @"\" + str + "_.log";
}
private static object obj_saveLog2 = new object();
public static void SaveLog2(string fileMsg)
{
lock (obj_saveLog2)
{
try
{
if (!Directory.Exists(@"c:\pathlog\"))
{
Directory.CreateDirectory(@"c:\pathlog\");
}
using (FileStream _fStream = new FileStream(@"c:\pathlog\" + DateTime.Now.ToString("yyyyMMdd") + "_.log", FileMode.Append, FileAccess.Write))
{
using (StreamWriter _sWrite = new StreamWriter(_fStream))
{
_sWrite.WriteLine(GetCurrentTimeString() + fileMsg);
_sWrite.Close();
_fStream.Close();
}
}
}
catch (Exception)
{
SaveLog2(fileMsg);
}
}
}
private static object obj_saveLog3 = new object();
public static void SaveLog3(string fileMsg,string id)
{
lock (obj_saveLog3)
{
try
{
if (!Directory.Exists(@"c:\neclog\" + DateTime.Now.ToString("yyyyMMdd")))
{
Directory.CreateDirectory(@"c:\neclog\" + DateTime.Now.ToString("yyyyMMdd"));
}
using (FileStream _fStream = new FileStream(@"c:\neclog\" + DateTime.Now.ToString("yyyyMMdd") +@"\"+id+ "_.log", FileMode.Append, FileAccess.Write))
{
using (StreamWriter _sWrite = new StreamWriter(_fStream))
{
_sWrite.WriteLine(GetCurrentTimeString() + fileMsg);
_sWrite.Close();
_fStream.Close();
}
}
}
catch (Exception)
{
SaveLog3(fileMsg,id);
}
}
}
}
}