using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HBLConsole.Service
{
public class TextHelper
{
private volatile static TextHelper _Instance;
public static TextHelper GetInstance => _Instance ?? (_Instance = new TextHelper());
private TextHelper() { }
///
/// 保存日志信息
///
///
public void SaveLogInfo(string info, string name, string DicrectoryName = "Log")
{
if (info?.Length > 0)
{
Directory.CreateDirectory(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $"{LocaPath.GetInstance.FilePath}\\{DicrectoryName}"));
string path = $"{AppDomain.CurrentDomain.BaseDirectory}{LocaPath.GetInstance.FilePath}\\{DicrectoryName}\\{DateTime.Now.ToString("yyyy-MM-dd") + " " + name}.txt";
StringBuilder sb = new StringBuilder();
sb.Append($"****************************************** {DateTime.Now} ******************************************" + "\n");
sb.Append(info);
sb.Append("**********************************************************************************************************" + "\n\n");
FileStream fs = new FileStream($"{path}", FileMode.Append);
StreamWriter sw = new StreamWriter(fs);
sw.WriteLine(sb.ToString());
sw.Close();
fs.Close();
}
}
public string ReadTextInfo(string fileName, string DicrectoryName = "")
{
Directory.CreateDirectory(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $"AccessFile\\{DicrectoryName}"));
string path = $"{AppDomain.CurrentDomain.BaseDirectory}AccessFile\\{DicrectoryName}\\{fileName}.txt";
FileStream fs = new FileStream(path, FileMode.OpenOrCreate);
StreamReader sr = new StreamReader(fs);
string GetStr = sr.ReadLine();
if (GetStr == null) GetStr = string.Empty;
sr.Close();
fs.Close();
return GetStr;
}
public void WriteTextInfo(string info, string fileName, string DicrectoryName = "")
{
Directory.CreateDirectory(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $"AccessFile\\{DicrectoryName}"));
string path = $"{AppDomain.CurrentDomain.BaseDirectory}AccessFile\\{DicrectoryName}\\{fileName}.txt";
FileStream fs = new FileStream(path, FileMode.Create);
StreamWriter sw = new StreamWriter(fs);
sw.WriteLine(info);
sw.Close();
fs.Close();
}
}
}