首先展开问题:
最近在负责一个文件内容解析的模块。其中有一段代码是将报文从文件通过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]; } } }
时间: 2024-10-10 12:50:23