C#编程,try_catch中抛错是,显示代码中错误发生的方法及行号的一种方法。

用try-catch语句来处理预防异常的时候,不只是将错误显示,还希望错误信息尽可能的详细。

比如:错误发生在哪个方法里,哪一行,哪个类文件等。

这里提供一种方法。

事例代码:

    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                GT();
            }
            catch (Exception ex)
            {
                Console.WriteLine("空间名:" + ex.Source + ";" + '\n' +
                                  "方法名:" + ex.TargetSite + '\n' +
                                  "故障点:" + ex.StackTrace.Substring(ex.StackTrace.LastIndexOf("\\") + 1, ex.StackTrace.Length - ex.StackTrace.LastIndexOf("\\") - 1) + '\n' +
                                  "错误提示:" + ex.Message);
            }
            Console.ReadKey();
        }
        /// <summary>
        /// 出错的方法
        /// </summary>
        private static void GT()
        {
            int i = 0;
            int j = 10 / i;
        }
    }

效果:

关键代码:

            catch (Exception ex)
            {
                Console.WriteLine("空间名:" + ex.Source + ";" + '\n' +
                                  "方法名:" + ex.TargetSite + '\n' +
                                  "故障点:" + ex.StackTrace.Substring(ex.StackTrace.LastIndexOf("\\") + 1, ex.StackTrace.Length - ex.StackTrace.LastIndexOf("\\") - 1) + '\n' +
                                  "错误提示:" + ex.Message);
            }

 


版权声明:本文为qq_43307934原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。