2

我正在使用一个 .NET Web 服务,它将处理一个具有相对较长的多级记录格式的文本文件。文件中的每条记录代表一个不同的实体;记录包含多个子类型。(COBOL 作业当前正在处理相同的记录格式,如果这能让您更好地了解我们正在查看的内容)。我创建了一个类结构(如果您愿意,可以使用 DATA DIVISION)来保存输入数据。

我的问题是,在 .NET 中处理大型、复杂的固定宽度文件时,您发现了哪些最佳实践?我的一般方法是将整行读入一个字符串,然后将字符串中的数据解析到我创建的类中。但我不确定将字符串中的字符作为数组使用还是使用字符串本身会得到更好的结果。我想这是具体的问题,字符串与字符 [],但我会很感激任何人的任何其他指针。

谢谢。

4

1 回答 1

6

我将构建与行中的数据匹配的类,使用类型、长度等属性。然后使用Microsoft.VisualBasic.FileIO.TextFieldParser对象读取文件,使用一些通用代码基于类对解析器进行编程,然后读取数据并创建实例类的(全部使用反射)。

我用它来读取 CSV 及其快速、灵活、可扩展、通用且易于维护的特性。我还有一些属性允许我在每个字段被读取时添加通用验证。

我会分享我的代码,但它是我工作的公司的 IP。

于 2009-03-31T14:07:32.207 回答