首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为读取可变长度的混合类型数据设计更好的文本文件格式

为读取可变长度的混合类型数据设计更好的文本文件格式
EN

Stack Overflow用户
提问于 2013-04-05 05:26:07
回答 2查看 336关注 0票数 1

我正在设计一个可以在C#中读取的文本文件格式。我需要在一行中存储类型: int、double和string。我计划使用.CSV格式,以便可以手动打开和读取该文件。特定记录可以具有例如8个已知类型,然后是可变数目的(字符串、整数、双精度)或(字符串、整数、双精度)或(字符串、整数、双精度、双精度)的“指示符”组合,并且一些行可以不包括“指示符”。因此,每个记录is可以具有可变长度。

在VB6中,我只需输入数据,将数据拆分成一个变量数组,然后确定数组中该行的元素数量,并使用*VarType函数来确定最终的“指示器”变量是字符串、整型还是双精度型,并相应地解析字段。

可能有更好的方法来设计文本文件,这可能是最好的解决方案。如果是这样的话,我对听到想法很感兴趣。我已经搜索过了,但没有发现专门讨论将混合类型的可变长度文本行读取到C#中的问题。

如果没有更好的格式,有没有办法在C#中复制上面两段所述的VB6 VarType函数*?我可以很容易地在C#中处理文本文件的读取和分行。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-04-05 05:40:02

首先,我同意Keith关于使用Xml或JSON的建议。你在这里重新发明了一个轮子。This page有一个介绍如何将对象序列化为文件的示例,以及一些指向更多信息的链接。

但是,如果您需要使用自己的文件格式和自定义序列化/反序列化,请查看Convert类,以及各种TryParse方法,这些方法挂起了int和double等内在值类型。

票数 1
EN

Stack Overflow用户

发布于 2013-04-05 05:28:20

您可以使用json或xml,因为它们在.NET中得到了很好的支持,并且具有自动序列化功能。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15822026

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档