gpt4 book ai didi

c# - .net 分割奇数和偶数管道分隔数据的方法

转载 作者:行者123 更新时间:2023-11-30 21:22:52 25 4
gpt4 key购买 nike

我有一堆管道分隔格式的数据,其中奇数条目是索引号,偶数条目是数据,例如

1|cat|2|dog|3|manatee|4||5|gerbil|6|etc

(注意偶尔缺失的值)

我想知道是否有一种很好的 .NET 类型方法可以将它变成带有 id 和 name 参数的类宠物。

我有一些代码执行 String.Split 并遍历数组,将对象拼凑在一起,但它看起来更像是我在编写 PL/SQL 而不是 C#...我我确定有一种方法可以在单行 Linq 或其他东西中执行此操作 - 谁能告诉我执行此操作的“正确”方法?

谢谢

最佳答案

您可以使用 TextFieldParser处理将字符串解析为字段的类(我知道这是一个 VB 类,但您可以从 C# 访问它)。然后只需为您的新对象设置交替字段。

这里是MSDN的例子,改成C#:

using (Microsoft.VisualBasic.FileIO.TextFieldParser MyReader = 
new Microsoft.VisualBasic.FileIO.TextFieldParser("C:\\testfile.txt"))
{
MyReader.TextFieldType = FileIO.FieldType.Delimited;
MyReader.SetDelimiters(",");
string[] currentRow = null;
while (!MyReader.EndOfData)
{
try
{
currentRow = MyReader.ReadFields();
string currentField = null;
foreach (var currentField in currentRow)
{
//set values for your object here
}
}
catch (Microsoft.VisualBasic.FileIO.MalformedLineException ex)
{
//handle the exception
}
}
}

关于c# - .net 分割奇数和偶数管道分隔数据的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2105763/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com