Tag: csv

使用CsvHelper可以将空格转换为可空吗?

我有一些非常蹩脚的Csv文件我需要解析。 我正在使用CsvHelper,它工作得很棒。 除了我有一些行有空格的地方,我有一个双倍的正常。 文件: 文本,SomeDouble,MoreText “好”,1.23 “好” “坏”,“坏” 如果我尝试将其映射到 public class Test { [CsvField(Name = “Text”)] public string Text { get; set; } [CsvField(Name = “SomeDouble”)] public double? SomeDouble{ get; set; } [CsvField(Name = “MoreText”)] public string MoreText{ get; set; } } 然后我得到这样的错误: CsvHelper.CsvReaderException:尝试读取类型记录时发生错误 行:’2’(从1开始) 场指数:’1’(基于0) 字段名称:’SomeDouble’ 场地价值:” System.Exception:不是Double的有效值。 —> System.FormatException:输入字符串的格式不正确。 System.ComponentModel.BaseNumberConverter.ConvertFrom(ITypeDescriptorContext context,CultureInfo culture,Object value)的System.ComponentModel.DoubleConverter.FromString(String […]

是否有CSV Serializer这样的东西? (类似于XmlSerializer)

我正在编写序列化和反序列化CSV文件,我想知道是否有一个现有的库,在概念上类似于XmlSerializer,它可以声明性地定义对象,并(de)将它们序列化到文件或流中。 我已经环顾四周但没有找到任何专注于序列化的东西。 我已经有了非常可靠的代码来解析每个RFC 4180的CSV文档,但真正有用的是序列化部分。 我不想要的只是一个解析器,建议使用String.Split()等。 那里有一个现有的项目,还是我应该建一个? 奖励礼仪问题:如果我最终滚动自己的序列化程序,是否适合用codeplex项目的链接回答这个问题?

C# – 比较两个CSV文件并提供输出

需要一些帮助,我有两个信息来源,信息被不同的程序导出到两个不同的CSV文件。 它们应该包含相同的信息,但这是需要检查的内容。 因此,我想做的是如下: 从两个文件中获取信息。 相比 输出任何差异以及差异所在的文件。(例如,文件A包含此文件,但文件B没有,反之亦然)。 文件是200,000个奇数行,因此需要尽可能有效。 尝试用Excel做这件事但事实certificate太复杂了,我真的很难以编程方式找到一种方法。

将文本文件转换为List

我有一个ID号的CSV文件,我需要它作为IEnumberable 。 我试图尽可能简单地从A到B,并想出了以下想法: Global.migrated = File.ReadAllText(Global.migrationList).Split(‘,’).Cast().ToList(); 但是当我运行它时,我被告知Cast无效。 我也尝试读取String列表并转换为int: List myTemp = File.ReadAllText(Global.migrationList).Split(‘,’).ToList(); Global.migrated = myTemp.Cast(); 但是这会引发以下错误: Cannot implicitly convert type ‘System.Collections.Generic.IEnumerable’ to ‘System.Collections.List.’ An explicit conversion exists. Are you missing a cast? 我不明白。 在这种情况下,我试图强制转换的对象不是IEnumerable 。 它应该是List 。 我担心我错过了一些关于铸造如何工作的重要信息。

如何在C#中存储之前validation.csv文件?

我有一些.csv文件,我在存储到数据库之前解析。 我想使应用程序更健壮,并在保存到数据库之前对.csv文件执行validation。 所以我问你们,如果你们有一些很好的链接,或代码示例,模式或建议如何做到这一点? 我将在下面粘贴我的.csv文件的示例。 .csv文件中的不同数据字段由制表符分隔。 每个新的数据行都在一个新行上。 我一直在思考我应该validation的内容,并提出了下面的列表(我非常愿意接受其他建议,以防你有什么想法应该添加到列表中?) Correct file encoding. That file is not empty. Correct number of lines/columns. correct number/text/date formats. correct number ranges. 这就是我的.csv文件的样子(带有两行的文件,一行上的数据由制表符分隔)。 4523424 A123456 GT-P1000 mobile phone Samsung XSD1234 135354191325234 345353 A134211 A8181 mobile phome HTC S4112-ad3 111911911932343 上面的字符串表示forms如下: “4523424\tA123456\tGT-P1000\tmobile phone\tSamsung\tXSD1234\t135354191325234\r \n345353\tA134211\tA8181\tmobile phome\tHTC\tS4112-ad3\t111911911932343\r\n” 那么你有没有关于如何在C#中做到这一点的好的设计,链接,模式,代码示例等?

在C#中创建CSV文件

我正在尝试创建一个csv文件,其中每个条目都由用户输入。 一旦输入了一组值,它就应该继续下一个。 但是我似乎无法做到这一点。 每次运行程序时,它都会替换以前的值。 using System; using System.IO; using System.Collections.Generic; namespace FileAccess { class MainClass { public static void Main(string[] args) { string FName; string LName; string Dpt; string Grade; string NumberOfHours; string file_name = “EmployeeDetails.txt”; System.IO.StreamWriter objWriter; objWriter = new System.IO.StreamWriter(file_name); String[] ArrayDetails = new string[5]; Console.Write(“Enter Emp First Name: “); FName=Console.ReadLine(); Console.Write(“Enter Emp […]

在数据中使用逗号解析CSV

可能重复: 在CSV文件中处理逗号 我写了一个CSV解析器,它工作正常,直到我达到此记录: B002VECGTG,B002VECGTG,HAS_17131_spaceshooter,”4,426″,0.04%,”4,832″,0.03%,0%,1,0.02%,$20.47 ,1逃脱, “4,426”和“4,426”制动我的解析器。 这就是我用来解析文本行的内容: char[] comma = { ‘,’ }; string[] words = line.Split(comma); 如何防止我的程序破坏?

使用TextFieldParser处理包含未转义双引号的字段

我正在尝试使用TextFieldParser导入CSV文件。 特定的CSV文件由于其非标准格式而导致我出现问题。 有问题的CSV的字段用双引号括起来。 当特定字段中还有一组未转义的双引号时,会出现此问题。 这是一个过于简单的测试用例,突出了问题。 我正在处理的实际CSV文件并非全部格式相同,并且有许多字段,其中任何一个都可能包含这些可能棘手的格式问题。 TextReader reader = new StringReader(“\”Row\”,\”Test String\”\n” + “\”1\”,\”This is a test string. It is parsed correctly.\”\n” + “\”2\”,\”This is a test string with a comma, which is parsed correctly\”\n” + “\”3\”,\”This is a test string with double \”\”double quotes\”\”. It is parsed correctly\”\n” + “\”4\”,\”This is a test string […]

读csv文件c#

有没有办法将csv文件读入矩阵,所以文件中的每个方块都是矩阵中的一个单元格?

分割逗号分隔值(CSV)

如何在c sharp中拆分CSV文件? 以及如何显示这个?