码迷,mamicode.com
首页 > 其他好文 > 详细

StreamReader的异常处理

时间:2015-01-28 12:47:21      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:

首先展开问题:

最近在负责一个文件内容解析的模块。其中有一段代码是将报文从文件通过StreamReader类

读取,并生成string。

如果只选择要读取得文件而不打开就会出现如下异常:

技术分享

技术分享

 

打开异常常规帮助:

技术分享

在异常帮助中,可以看出:

1.异常的类型是:System.ArgumentNullException

2.异常的原因是:如果向方法传递空引用,而该方法不接受空引用为有效参数。空引用是对不存在的对象的引用,原因通常是还未以编程方式创建该对象的任何实例。

3.解决方法是:检查参数以确保它们不为空。

 

修改成只需加一个判断就可以避免这个错误了!呵呵

 if (FilePath != null)
            {
                StreamReader sr = new StreamReader(FilePath, Encoding.Default);
                string FileString = sr.ReadToEnd();
                string[] split = FileString.Split(new Char[] { ‘,‘, ‘*‘, ‘\t‘ });
                string GroundSpeed;
                string GroundCourse;
                for (int i = 0; i < split.Length; i += 9)
                {
                    if ("$GPRMC" == split[i])
                    {
                        // 获取了时间信息
                        label_End.Text = split[i + 1];
                        // 获取了航速和航向的字段
                        GroundSpeed = split[i + 7];
                        GroundCourse = split[i + 8];


                    }
                }
            }

  

StreamReader的异常处理

标签:

原文地址:http://www.cnblogs.com/wssxr/p/4255337.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!