问题标签 [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.

0 投票
3 回答
3891 浏览

c# - 使用 FileHelpers 将 DateTime 格式化为 UTC

我有一条使用 FileHelpers 写入 CSV 文件的记录。我希望将结构的 DateTime 字段写为 UTC 日期。我目前有以下格式化程序:

我需要做什么才能输出 UTC 日期?

0 投票
6 回答
33415 浏览

c# - CSV中的列标题使用fileHelpers库?

FileHelper 库中是否有内置字段属性,它将在最终生成的 CSV 中添加标题行?

我用谷歌搜索并没有找到太多关于它的信息。目前我有这个:

它有效,但没有标题。

我正在考虑FieldTitleAttribute使用类似的属性并将其用作列标题。

所以,我的问题是在什么时候检查属性并插入标题列?有没有人做过类似的事情?

我想插入标题并使用与实际字段名称不同的自定义文本,只需在对象的每个成员上都有一个属性:

也许还有一个选项可以告诉引擎在生成标题时插入标题。

所以当WriteStreamorWriteString被调用时,标题行将插入自定义标题。

我为 DelimitedFileEngine 找到了几个事件,但不是检测当前记录是否是第一行以及如何在此之前插入一行的最佳方法。

0 投票
1 回答
377 浏览

c# - 动态选择写入哪些 CSV 字段

我正在使用 FileHelpers 将一些数据写入 CSV 文件。FileHelpers 很棒,因为它让我可以使用 FileHelper 转换器轻松格式化各种字段。以下是 FileHelpers DelimitedRecord 的示例:

我希望用户能够通过配置文件指定他们希望将哪些字段写入 CSV 文件。使用 FileHelpers,如何动态更改写入 CSV 文件的字段?我知道我可能会使用 DataTable 之类的东西,但我不确定如何格式化字段(引用值、日期格式等),如果可能的话,我更喜欢使用 FileHelpers 提供的简单转换器。如果不可能,我该如何根据上面的示例记录使用 DataTable 格式化字段?

0 投票
2 回答
3841 浏览

c# - FieldConverter ConverterKind.Date "dd/MM/yyyy" 异常

我尝试读取 csv 文件。我的第五条记录包含日期:03/11/2008

这是我的一段代码:

我的代码在此崩溃:

除了这个例外:行:1。列:41。字段:datum_5。将“2008 年 3 月 11 日”转换为类型时出错:“日期时间”。使用格式:'dd/MM/yyyy'

当我这样做时:

有了这个:

我得到了这个例外:不能从 2008 年 3 月 11 日开始确定日期 Parameternaam:从

我究竟做错了什么?

0 投票
2 回答
527 浏览

c# - 升级了 FileHelpers 库,现在我的代码已经过时了

当我像这样使用 FileHelpers 进行文件导入时,我使用反射来动态指定类名......

在获得最新版本的库之后,我在上面所做的事情现在被认为是“过时的”

以这种方式实现已更改为泛型

但我不确定如何myImportDefintionClass在运行时动态指定,使用原始反射代码不起作用。

更新:在尝试了 Paul 的代码之后,我现在需要能够访问 FileHelpers 类中的方法或任何内容,例如(这部分无法编译)

但我不是很清楚到底发生了什么。任何可以更好地理解泛型概念的链接也将不胜感激。

0 投票
1 回答
460 浏览

etl - FileHelpers - 字符串长度问题?

我正在移动一些关于使用 rhino.etl 的数据

我要移动的一个表有一个列,它为每一行存储相当大的文本块——尽管它不是那么大,只有大约 2000 行。

运行作业时,我得到:

FileHelpers.dll 中发生了“FileHelpers.FileHelpersException”类型的第一次机会异常

现在,删除大文本列可以解决问题 - 这是我得到的唯一输出。

某处是否存在限制数据大小或其他内容的限制?

调试输出:monobin

0 投票
2 回答
3961 浏览

c# - ReadStreamAsDT - Filehelpers 和 C# - 如何使用 filehelpers 动态读取 CSV?

我正在尝试通过 FileHelpers 动态读取 CSV 并将 CSV 数据作为数据表处理。我的 CSV 文件将不一样。它们将具有不同的列标题和不同数量的列。我正在使用 ReadStreamAsDT 方法,但似乎仍然需要一个结构化类来初始化 FileHelperEngine。有任何想法吗?

0 投票
1 回答
250 浏览

c# - 使用 FileHelper 类存储 RecordString

我们在项目中使用 FileHelpers 2.0。我已经定义了我的记录并正确导入了数据。得到我的通用对象数组后:

在获取由于格式问题而出错的记录后,我正在遍历importedUsers数组并进行验证以查看导入的信息是否有效。

如果数据无效,我希望能够从我的文件的原始记录中记录整个字符串。

当 FileHelperEngine 读取每条记录时,有没有办法将整个“RecordString”存储在 UserRecord 类中?

0 投票
5 回答
764 浏览

c# - 没有参数的 F# 类构造函数 --- 使用带有 f# 的文件帮助程序时出错

我按照使用 F# 和 filehelpers 解析 CSV的链接。得到以下代码的编译器错误"The record class oneRow need a constructor with no args (public or private)"

编辑 该解决方案看起来比 c# 版本非常冗长。我需要添加()mutable并且[<DefaultValue>]

但是类似的代码可以在 C# 中工作,而无需指定构造函数。谁能帮我修复 F# 代码?谢谢。

0 投票
2 回答
2810 浏览

c# - FileHelpers 库可以编写包含可为空字段的类并读取它们吗?

我正在使用 FileHelpers 库的 2.0 版,该库被记录为能够处理 .NET 2.0 Nullable 类型。

我正在使用文档中示例中给出的代码:

使用 FileHelperEngine,我可以成功读取 OrderDate、RequiredDate 或 ShipVia 字段没有值的文件。该文件如下所示:

1|||

但是,我无法将生成的 Orders[] 写入文件 - 库抛出 NullReferenceException,堆栈跟踪如下:

在 FileHelpers.ConvertHelpers.CultureConverter.FieldToString(Object from) 在 FileHelpers.FieldBase.BaseFieldString(Object fieldValue) 在 FileHelpers.DelimitedField.CreateFieldString(StringBuilder sb, Object fieldValue) 在 FileHelpers.FieldBase.AssignToString(StringBuilder sb, Object fieldValue) 在 FileHelpers .RecordInfo.RecordToString(Object record) at FileHelpers.FileHelperEngine 1.WriteStream(TextWriter writer, IEnumerable1 个记录,Int32 maxRecords) 在 FileHelpers.FileHelperEngine 1.WriteFile(String fileName, IEnumerable1 个记录,Int32 maxRecords) 在 FileHelpers.FileHelperEngine1.WriteFile(String fileName, IEnumerable1 条记录)在 C:\dev\src\TestingFileHelpers\TestingFileHelpers\Program.cs 中的 TestingFileHelpers.Program.Main(String[] args):System.AppDomain._nExecuteAssembly(RuntimeAssembly 程序集,String[] args) 的第 19 行.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args) 在 Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly() 在 System.Threading.ThreadHelper.ThreadStart_Context(Object state) 在 System.Threading.ExecutionContext.Run(ExecutionContext在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) 在 System.Threading.ThreadHelper.ThreadStart() 的 executionContext, ContextCallback 回调, 对象状态, Boolean ignoreSyncCtx)

我确定我一定在这里遗漏了一些东西,但我无法弄清楚它是什么。非常感谢任何帮助。