.net NET中固定宽度处理的最佳实践

.net NET中固定宽度处理的最佳实践,.net,fixed-length-record,.net,Fixed Length Record,我正在使用一个.NETWeb服务,它将处理一个具有相对较长的多级记录格式的文本文件。文件中的每条记录代表一个不同的实体;该记录包含多个子类型。(相同的记录格式目前正在由COBOL作业处理,如果这能让您更好地了解我们正在查看的内容的话)。我已经创建了一个类结构(一个数据划分,如果你愿意的话)来保存输入数据 我的问题是,对于在.NET中处理大型、复杂的固定宽度文件,您发现了哪些最佳实践?我的一般方法是将整行读入字符串,然后将字符串中的数据解析到我创建的类中。但我不确定是将字符串中的字符作为数组处理,

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

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


谢谢。

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

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


我愿意分享我的代码,但这是我工作的公司的IP。

+1因为我知道TextFileParser。这里似乎没有人知道它。除非它有一些秘密问题,以至于没有人愿意提及它?同意。我以前也从未担任过它的负责人。非常感谢。实际上它的名字叫
TextFieldParser
。我同意这门课很有用。