Hata yakalama ve dosyaya yazdırma örneği
Örnek kullanım:PHP Code:
public class Dosya
{
public static Encoding anEncoding = Encoding.GetEncoding("windows-1254"); // Windows Türkçe
// D:\BORSA 2024\iDeal\TRADE klasörü mevcut olmalı
private static string HataLogDosyası { get { return "D:\\BORSA 2024\\iDeal\\TRADE\\RunTimeErrorLog." + DateTime.Now.ToString("yyyyMMdd") + ".txt"; } }
public static string TradeLogSeperator = "".PadRight(22) + "~~~~~~~~~~~~~~~~~~~~~~~~~~~~";
public static void RunTimeErrorLog(string Mesaj)
{
try
{
string VeriDosyası = HataLogDosyası;
using (FileStream fs = new FileStream(VeriDosyası, FileMode.Append, FileAccess.Write))
{
using (StreamWriter Writer = new StreamWriter(fs, anEncoding))
{
string TarihliMesaj = DateTime.Now.ToString("HH:mm:ss.ffffff").PadRight(22) + Mesaj + " // iDeal";
Writer.WriteLine(TarihliMesaj);
}
}
}
catch { return; }
}
public static void RunTimeErrorLog(Exception Ex, string Mesaj)
{
try
{
string VeriDosyası = HataLogDosyası;
using (FileStream fs = new FileStream(VeriDosyası, FileMode.Append, FileAccess.Write))
{
using (StreamWriter Writer = new StreamWriter(fs, anEncoding))
{
Mesaj = DateTime.Now.ToString("HH:mm:ss.ffffff").PadRight(22) + Mesaj;
Mesaj += "\nException Message".PadRight(22) + ": " + Ex.Message;
Mesaj += "\nException Source".PadRight(22) + ": " + Ex.Source;
Mesaj += "\nException StackTrace".PadRight(22) + ": " + Ex.StackTrace;
Writer.WriteLine(Mesaj);
Writer.WriteLine(TradeLogSeperator);
}
}
}
catch { return; }
}
}
PHP Code:
public static bool VirgüldenSonrakiBasamaklarınaKadarAynıMı(float Değer1, float Değer2, int VirgüldenSonrakiBasamakAdeti = 2)
{
try
{
float Faktör = (float)Math.Pow(10, VirgüldenSonrakiBasamakAdeti);
return Math.Truncate(Değer1 * Faktör) == Math.Truncate(Değer2 * Faktör);
}
catch (System.Threading.ThreadAbortException)
{
Dosya.RunTimeErrorLog("0007 VirgüldenSonrakiBasamaklarınaKadarAynıMı");
return false;
}
catch (Exception Ex)
{
Dosya.RunTimeErrorLog(Ex, "0007 VirgüldenSonrakiBasamaklarınaKadarAynıMı");
return false;
}
}
Yer İmleri