问题标签 [fastercsv]

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 投票
1 回答
506 浏览

ruby-on-rails-3 - CSV.parse 无法更新行时遇到问题

我正在使用 ruby​​ 1.9.2p290 运行 rails 3.0.1 并尝试使用 CSV 解析 CSV 文件(据我了解,CSV 现在使用的是 fasterCSV 代码)。

我正在关注一篇关于为 fastCSV 设置它的好文章,只需要进行微小的更改即可使其正常工作(将要求更改为 CSV 而不是 fastCSV 等)

我可以让 csv 文件加载到一个表中,并计算出正确的列数,但不管有多少行,它都是一行。例如,如果我的 csv 文件有三行和三列,我的 import_table 将显示列号 0、1、2 三次而不增加行号。所以它确实识别出我的 csv 文件每一行的结尾,但不会增加行计数器。我错过了什么?

我的 csvcontroller 看起来像这样:

我尝试使用 .readline 而不是 .read,但这又打开了另一个蜡球。

0 投票
3 回答
897 浏览

ruby - 使用 Ruby CSV 创建 Rails 记录,其中字符串字段不可查询

我正在尝试将种子数据从 CSV 文件加载到我的 Rails 应用程序中。我最初安装了 fastcsv gem,只是发现从 ruby​​ 1.9 开始,fastcsv 已被弃用,取而代之的是 CSV 库。因此,在收到一个非常有用的错误告诉我切换后,我切换到了 CSV。

然而,现在我遇到了最奇怪的现象,当我加载数据时,一切看起来都很正常,但我似乎无法查询字符串字段。字符串字段由看似正确的字符串填充,但我无法访问它们。我可以查询任何数字字段,结果将返回,但不是字符串字段。我尝试使用分隔符来引用引号,但无济于事。我什至从我的 csv 文件中删除了所有引号,但我仍然无法查询字符串字段。下面是我的代码,以及来自 Rails 控制台的一些示例查询和返回。

这是我的种子文件中的前两条记录。

这就是我进入 rails 控制台时得到的。例如,如果我想查询像 year 这样的数字,它工作得很好。

但是,如果我尝试通过说姓氏进行查询,我什么也得不到,即使它告诉我姓氏存在于上一个查询中。

我可以让它工作的唯一方法是使用散列变量表示法将它放在一组额外的双引号(转义)中,这将我的所有字符串记录都放在引号中的数据库中,然后我使用删除命令删除引号退出。

然后我可以查询字符串数据。

显然这不是首选方法,因为它使我的加载时间增加了一倍,但老实说,我无计可施。

任何帮助将不胜感激。

按照这里的要求,我添加了 schema.rb

这是我的 SQLite 数据库浏览器按要求查看的数据库屏幕截图。

玩家表视图:看起来很正常吧?

查询字符串字段时没有返回行

看起来在 ruby​​ 论坛中有一个类似的问题,它可能与编码有关,但我需要对编码做更多的研究才能弄清楚这一点。

0 投票
1 回答
392 浏览

ruby-on-rails - Fastercsv 显示 malformedCSVError,我做错了什么?

我正在用 Ruby 实现,我正在运行一个读取 CSV 文件以添加用户的项目。

但是当我选择我的文件时,它总是给出同样的错误:

我的 CSV 文件只存在于:

"RubenPersoon1","test","Bauwens","Ruben","rub@gmail.com",0

任何人都知道什么是错的?

0 投票
3 回答
3036 浏览

ruby - FasterCSV:几个分隔符

我的 Rails3 应用程序解析用户上传的 CSV 文件。
正如所料,用户上传制表符分隔和逗号分隔的文件。
我想支持两者。

我的代码:

问题:如何将其更改为也支持逗号?

FasterCSV 的文档将 col_sep 描述为The String placed between each field.不起作用:col_sep => ",\t"

\t注意:里面的所有数据都是整数或标识符,因此有人使用或在内容中(不是分隔符)的概率,为零。所以在同一个文件中使用两个不同的分隔符并不是我明确想要阻止的。

0 投票
1 回答
258 浏览

ruby-on-rails - FasterCSV 错误 /Library/Ruby/Gems/1.8/gems/fastercsv-1.5.4/lib/faster_csv.rb:1641:in `shift'

ruby 新手这是我使用 FasterCSV Gem 的第一个项目,并且非常喜欢它的速度。

我发现了一个问题,当一个字段太长时,它会在下面抛出一个错误:

/Library/Ruby/Gems/1.8/gems/fastercsv-1.5.4/lib/faster_csv.rb:1641:in `shift': FasterCSV::MalformedCSVError (FasterCSV::MalformedCSVError)

错误在第二行第一行被正确读取:-)

"1013197145","PSION HU6020 手带","1","1","10"

"1013197542","HP ProBook NA920EA_KT931AT 39.6 cm (15.6") 笔记本电脑 - Intel Core 2 Duo T6570 2.10 GHz - 1366 x 768 WXGA 显示器 - 2 GB RAM - 250 GB HDD - DVD-Writer LightScribe - Intel GMA 4500MHD 显卡 - 蓝牙- 网络摄像头 - 正版 Windows Vista Business - 5 小时电池 - HDMI","1","1","10"

这是我的代码:

任何帮助将非常感激。

0 投票
0 回答
82 浏览

ruby-on-rails - FasterCsv 在我的 Ruby on Rails 视图中没有显示任何结果?

我在 ruby​​ on rails 中实现,在我的第一个视图中,我得到一个文件,我把它放入一个参数中,然后在我的控制器中我有:

在我的第二个视图中,我只想显示第一行的结果,我在这里:

但是总是当我进入这个视图时,系统没有显示任何东西,而我认为我的代码是正确的。有人知道我在做什么错吗?

谢谢

0 投票
3 回答
3728 浏览

ruby - 使用 ruby​​/fastercsv 合并公共字段上的 CSV 文件

我有一个包含许多列的“主”文件:1 2 3 4 5。我还有一些其他文件,其行数少于主文件,每个文件的列数:1 6。我想合并这些文件匹配在第 1 列字段上并将第 6 列添加到主字段。我见过一些 python/UNIX 解决方案,但如果它适合的话,我更喜欢使用 ruby​​/fastercsv。我将不胜感激任何帮助入门。

0 投票
4 回答
7986 浏览

ruby-on-rails-3 - 在 Rails 中,无法覆盖内容配置文件名

我正在使用 Rails 3.1.0.rc8 和 Chromium 15.0.874.102。

我想设置 CSV 下载的文件名。我正在关注这个SO 解决方案,但发现自己无法修改filename标题Content-Disposition

这是我的代码:

在我的控制器中:

在我的日志中:

在 Chromium 网络检查器工具中,我在响应标头中看到以下内容:

如果我将 更改Content-Type为类似的东西foo/bar,我会在我的网络检查器工具中看到更改。无论我设置什么filename,它仍然是index.csv.

谢谢,马克斯

0 投票
1 回答
165 浏览

ruby-on-rails - fastcsv 中的输出错误?Ruby 中的“太多”

我在 Ruby 中实现,我只想读取 CSV 文件。我的 CSV 看起来像:

它是在 Excel 中制作并设置在 CSV 文件中

但是当我在我的应用程序中这样做时:

在我看来,我只是这样做:

我得到:

所以有很多 " 的方法。有人知道我做错了什么吗?就像行只有 1 列。如果我这样做,samples[0].each我只会得到 1 项。整行而不是列。

0 投票
1 回答
164 浏览

ruby-on-rails - 我在迁移中指定什么数据类型以使用 FasterCSV 从 CSV 导入日期?

各位溢出者,

我有一个制表符分隔的 csv 文件,其中包含这种格式的日期: 30-11-2011 2:24

我正在用FasterSCVgem 解析 csv。我创建了一个迁移,将此信息存储为datetime. 我应该这样做还是将其定义为stringRuby在每次检索时都将其转换?

我是否需要定义一些FasterCSV转换器?

谢谢...