一般而言,文本文件都只会包含一种格式(例如,以逗号分隔或是固定字段宽度),然而文本文件却很可能含有多种格式,当遇到此种状况时该如何处理呢?
如果您的文本文件含有多种格式,应该使用TextFieldParser对象的PeekChars方法去取得数据行从头算起特定数目的字符,以便藉此来判断该数据行的格式,然后告知TextFieldParser对象该数据行的格式为何并读取该数据行。PeekChars方法只会返回指定数目的字符而且不会前进至下一行,通过这样逐一判别每一笔数据行的格式并逐行读取数据行的方式,即可够解析含有多种格式的文字文件并顺利读取。
举例来说,假设我们在应用程序项目的Text文件夹含有一个名称为多格式文本文件.txt的文本文件,此文本文件的特殊之处在于它含有下列三种格式:
固定字段宽度分别为5、10与 -1的数据行。
固定字段宽度分别为6、10、17与 -1的数据行。
采用逗号分隔的数据行。
上述这三种格式的数据行存在一个特点,就是数据行的开头字符分别是CK、PB与SP,因此我们只要通过TextFieldParser对象的PeekChars方法取得数据行的前两个字符,然后...[ 查看全文 ]