1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- using Flyinsono.DBCopy.Tool.Entities.Config;
- using Newtonsoft.Json;
- using System;
- using System.Collections.Generic;
- using System.IO;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace Flyinsono.DBCopy.Tool.Utilities
- {
- internal class ConvertHelper
- {
- /// <summary>
- /// 时间转长整形的时间戳
- /// </summary>
- /// <param name="time">当前时间</param>
- /// <param name="isUtc">是否utc格式时间戳</param>
- /// <returns>true</returns>
- public static long ToTimestamp(DateTime time, bool isUtc = false)
- {
- DateTime refTime = TimeZoneInfo.ConvertTimeFromUtc(new DateTime(1970, 1, 1), TimeZoneInfo.Utc);
- var diffSpan = (isUtc ? time : time.ToUniversalTime()) - refTime;
- long unixTime = (long)Math.Round(diffSpan.TotalMilliseconds, MidpointRounding.AwayFromZero);
- return unixTime;
- }
- /// <summary>
- /// 读取文件
- /// </summary>
- /// <typeparam name="T"></typeparam>
- /// <param name="fileName"></param>
- /// <returns></returns>
- public static T ReadFileData<T>(string fileName = "TestConfig.json")
- {
- var path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $"Config", fileName);
- if (!File.Exists(path))
- {
- return default(T);
- }
- var jsonContent = File.ReadAllText(path);
- try
- {
- var testConfig = JsonConvert.DeserializeObject<T>(jsonContent);
- return testConfig;
- }
- catch (Exception ex)
- {
- Logger.WriteLineError($"ReadFileData Error:{ex}");
- return default(T);
- }
- }
- /// <summary>
- /// 写入文件
- /// </summary>
- /// <param name="fileName"></param>
- /// <param name="message"></param>
- public static void WriteFileData(string message, string fileName = "TestConfig.json")
- {
- var logPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $"Config", fileName);
- using (StreamWriter streamWriter = new StreamWriter(logPath, true))
- {
- streamWriter.WriteLine(message);
- }
- }
- }
- }
|