问题标签 [filehelpers]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 如何使用 FileHelpers 创建用于写入 csv 文件的记录
我正在使用 Filehelpers 从文件中导入我的数据库。我现在正在处理相反的过程,并且无法查看如何从我的数据对象创建记录。
我可以找到的所有示例都显示来自文件-> 表-> 文件,我正在使用带有泛型的接口进行转换。我在入站转换中使用这个:
并且想对出站使用这样的东西:
我使用这个类来表示 CSV 记录:
我在 Filehelpers 文档中遇到了 TransformToRecordAttribute
TransformToRecordAttribute 类
使用此属性,您可以在 RecordClass 中标记一个方法,该方法负责将其转换为指定的。
有没有人有使用此属性的示例或如何创建记录集以使我朝着正确方向前进的示例?
csv - 使用 FileHelpers 动态创建 CSV 文件
FileHelpers 支持一种称为“运行时记录”的功能,当您在运行时才知道布局时,它可以让您将 CSV 文件读入 DataTable。
是否可以使用 FileHelpers 在运行时以相同的方式创建 CSV 文件?
根据一些用户输入,必须创建的 CSV 文件将具有不同的字段,这些字段只能在运行时知道。我可以按照阅读部分中的描述为 FileHelper 引擎创建所需的类型,但我无法弄清楚我的数据需要采用什么格式才能写入。
编辑
或者,任何人都可以建议一个好的 CSV 库,它可以在运行前不知道其字段的情况下创建 CSV 文件?例如,从 DataTable 创建一个 CSV 文件。
asp.net - Filehelpers Excel 到 Oracle db
我想将excel数据导入oracle DB。我在 Excel 部分得到了足够的帮助,你们能在 Oracle 方面帮助我吗?
是否可以使用 filehelpers 导入 o racledb?请提供一些示例代码以供参考。
谢谢迪
c# - 如何访问在运行时定义类型的对象?
我正在使用 FileHelpers 使用以下代码解析其结构未知的 CSV 文件:
这似乎工作得很好。当我使用调试器单步执行它时,record 是 ImportClass 类型的对象,并且 Fields 字段正确填充了文件中的数据。
我遇到的问题是如何实际提取这些数据?我无法将记录转换为 ImportClass,因为该类型在编译时未知。我真的需要使用反射还是有更简单的方法来做到这一点?
.net - FileHelpers 和 CSV:当记录可以水平无限扩展时该怎么办
我正在尝试使用 FileHelpers 解析这种类型的 CSV 文件:
我不知道如何用 FileHelpers 解析它。我想我应该能够做这样的事情:
但这对于 FileHelpers 来说似乎是不可能的。我似乎能做的最好的是:
然后我需要用Values
逗号分割以获得每条记录的值集。如果我必须手动解析每条记录的一部分,那么使用 FileHelpers 似乎没有多大意义。
我错过了什么吗?我已经查看了文档/示例,但似乎无法为我的格式找到解决方案。Excel 对我的格式没有问题,所以我想有一种方法可以使用现有的免费库(FileHelpers 或其他一些库)来做到这一点。有任何想法吗?
c# - C# - FileHelper FieldConverter 例程可以引用记录中的其他字段吗?
我正在使用出色的 FileHelpers 库来处理固定长度的航班时刻表文件。
我有一个日期字段,然后是记录中的几个字段,一个时间字段。
我想在 FileHelpers 记录类中结合这两者,并且知道有一个自定义FieldConverter
属性。使用此属性,您可以提供一个自定义函数来处理您的字段数据并实现StringToField
和FieldToString
.
我的问题是:我是否也可以将其他字段(已读取)传递给该客户FieldConverter
,以便我可以将日期和时间组合在一起。FieldConverter
有一个实现,允许您引用自定义处理类和“其他字符串”甚至对象数组。但是,鉴于这是在属性定义中完成的,我很难访问这个较早的字段引用。
c# - FileHelpers 在调用 engine.ReadNext() 方法和 readign engine.LineNumber 属性之间的线程锁定问题
我将生产者/消费者模式与 FileHelpers 库一起使用,使用多个线程从一个文件(可能很大)导入数据。每个线程都应该导入该文件的一部分,我想使用 FileHelperAsyncEngine 实例的 LineNumber 属性,该实例正在读取文件作为导入行的主键。FileHelperAsyncEngine 内部有一个 IEnumerator IEnumerable.GetEnumerator(); 使用 engine.ReadNext() 方法进行迭代。这在内部设置 LineNumber 属性(这似乎不是线程安全的)。
消费者将拥有与之关联的生产者,生产者将向消费者提供数据表,消费者将通过 SqlBulkLoad 类使用它们,该类将使用 IDataReader 实现,该实现将遍历消费者实例内部的数据表集合。的每个实例都将有一个与之关联的 SqlBulkCopy 实例。
我有线程锁定问题。下面是我如何创建多个 Producer 线程。我在后面开始每个线程。将调用生产者实例上的 Produce 方法来确定将处理哪个输入文件块。似乎 engine.LineNumber 不是线程安全的,我没有在数据库中导入正确的 LineNumber。似乎到那时 engine.LineNumber 被读取了其他一些名为 engine.ReadNext() 的线程并更改了 engine.LineNumber 属性。我不想锁定应该处理大量输入文件的循环,因为我失去了并行性。如何重组代码来解决这个线程问题?
谢谢拉德
c# - .NET 如何从匿名类型的枚举中输出 csv?
使用FileHelpers,我装饰了一个类,[DelimitedRecord(",")]
并将该类型的对象的枚举输出为 CSV。但是,它不起作用,因为我的类继承自ActiveRecordLinqBase<T>
,这导致了一些问题。
所以,我想知道我是否可以只选择一个匿名类型的枚举,并以某种方式让 filehelpers 从中生成 csv。我不喜欢只为 FileHelpers 定义一个类来输出 csv。
我愿意使用另一个 csv 库,但 FileHelpers 已被证明。
编辑
@Foovanadil:这将是我想做的事情:
给你:
.net - 使用 FileHelpers 编写 CSV 文件时如何控制日期的输出格式?
我正在使用FileHelpers 2.0库编写 CSV 文件,使用ClassBuilder
该类生成记录类型。
我的数据包含日期,因此我创建了一个类型的字段DateTime
,但是在生成文件时,日期值以格式ddmmyyyy
而不是dd/mm/yyyy
例如28042000
而不是28/04/2000
.
我已将类的DateFormat
属性设置为,但它没有帮助。CsvOptions
"dd/MM/yyyy"
下面是生成记录类型的代码:
c# - 如何使用 FileHelpers 返回完全填充的对象以获取部分完整的数据?
假设您有一个具有以下结构的 CSV 文件
有对应的FileHelpers
定义类
如何使用FileHelpers来返回对象,使每个对象都被完全填充?
让我澄清一下,目前,使用的结果engine.ReadFile
只会产生完全填充的第 2 行和第 5 行的对象,这是有道理的,因为这些字段是空白的。但是,第 3 行和第 4 行的对象也应该具有与第 1 行相同的ID
和。每一行的字段都应该保持不变。我不确定数据的正确术语是什么,但它似乎“部分标准化”。Description
Value
我目前解决这个问题的方法如下使用AfterRead
事件。我对事件、事件处理程序、委托等没有很好的掌握,所以我正在寻找一种使用 FileHelpers 来实现这一目标的替代方法。它也显得非常笨重。