Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在不计算数据类型的情况下读取文本文件并保存到数据库中?_C# - Fatal编程技术网

C# 如何在不计算数据类型的情况下读取文本文件并保存到数据库中?

C# 如何在不计算数据类型的情况下读取文本文件并保存到数据库中?,c#,C#,我需要编写一个C#程序来读取任何平面文本文件,并在每一行中使用以前保存在配置文件中的“regexp”表达式进行解析,该表达式将该行分隔为多个字段,这些字段存储在列表对象中,每个元素都是一个字段。然后,让每个字段保存在之前在数据库表中创建的各个字段中,依此类推 在这一点上,一切都被视为数据在没有干扰的情况下进行了编排,就像从文本文件到数据库的管道一样。然而,我面临着一些困难,其中一些字段可以以不同的格式表示日期/小时,bool、double等。对于这几种情况,我需要修改我的程序,并生成某种“IFs

我需要编写一个C#程序来读取任何平面文本文件,并在每一行中使用以前保存在配置文件中的“regexp”表达式进行解析,该表达式将该行分隔为多个字段,这些字段存储在列表对象中,每个元素都是一个字段。然后,让每个字段保存在之前在数据库表中创建的各个字段中,依此类推

在这一点上,一切都被视为数据在没有干扰的情况下进行了编排,就像从文本文件到数据库的管道一样。然而,我面临着一些困难,其中一些字段可以以不同的格式表示日期/小时,bool、double等。对于这几种情况,我需要修改我的程序,并生成某种“IFs”,以尽量减少处理时间的开销

问题是要知道C#中是否有任何方法或技术,尽管有提到的特殊情况,但它允许我将数据记录在数据库中,而不需要以前的评估来确定数据类型


谢谢。

为什么不将文本文件中的所有数据写入一个字段均为字符串(varchar、text等)的数据库中呢。在某些情况下,您必须查询数据库才能使用这些值,此时您可以将字符串转换为各自的数据类型。

您可能需要显示一个示例。我不太明白:)如果您的数据库表是预定义的,那么您就已经知道了数据类型。那个么,为什么你们不能假设特定的数据类型和格式来读取文件呢?VinayC,你们是对的。因此,假设我不仅在config.file中定义了regexp表达式,而且还定义了创建包含字段和类型的表的SQL命令,那么让我来支持我的问题。我真正想要的不是为每个要读取的文本文件和要保存的表编写代码。我想要些普通的。这可能吗?Leppie,我想要的是编写一个C#程序,该程序能够读取任何文本文件,并根据配置文件中指定的格式以regexp表示法拆分字段,然后将数据保存到数据库表中。我不想为我读取并保存到表中的每个文本文件编写代码。戴夫,谢谢你的建议。请允许我问一下,在将每个字段以正确的类型保存到表中之前,使用转换进行查询(可能是查询可以执行多次)的过程是否比在C#程序中查询数据类型的过程成本更低。我不确定,但猜测是,最好在保存到模式反映实际使用的数据类型的数据库之前获取类型信息,因为查询信息不再需要转换。如果您读取的数据多于写入的数据,那么不必每次都进行转换可能符合您的最佳利益。也就是说,我想知道读取性能是否也取决于您使用的ADO提供程序。我不确定。