gpt4 book ai didi

c#删除字符串中多次出现的字符的智能方法

转载 作者:行者123 更新时间:2023-11-30 13:49:02 25 4
gpt4 key购买 nike

我的程序读取一个文件,该文件有数千行如下所示的内容“时间戳”、“LiveStandby”、“Total1”、“Total2”、“Total3”等。每一行都不一样拆分的最佳方法是什么,删除“”以及将值放入列表中

这是我的

 while ((line = file.ReadLine()) != null)
{
List<string> title_list = new List<string>(line.Split(','));
}

上面的步骤仍然没有删除引号。我可以做 foreach 但这有点破坏了在 1 行中使用 List 和 Split 的目的。最好和最聪明的方法是什么?

最佳答案

我认为最好的方法是使用一个库来解析 CSV ,例如 FileHelpers .

具体来说,在您的情况下,这将是使用 FileHelpers 库的解决方案:

定义一个描述记录结构的类:

[DelimitedRecord(",")]
public class MyDataRecord
{
[FieldQuoted('"')]
public string TimeStamp;
[FieldQuoted('"')]
public string LiveStandby;
[FieldQuoted('"')]
public string Total1;
[FieldQuoted('"')]
public string Total2;
[FieldQuoted('"')]
public string Total3;
}

使用这段代码解析整个文件:

var csvEngine = new FileHelperEngine<MyDataRecord>(Encoding.UTF8)
{
Options = { IgnoreFirstLines = 1, IgnoreEmptyLines = true }
};

var parsedItems = csvEngine.ReadFile(@"D:\myfile.csv");

请注意,此代码仅供说明之用,我并未编译/运行它。但是,该库使用起来非常简单,网站上有很好的示例和文档。

关于c#删除字符串中多次出现的字符的智能方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10341136/

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