Ruby:无法解析在 OS X 中导出为 CSV 的 Excel 文件

2024-04-14

我正在使用 Ruby 的 CSV 库来解析一些 CSV。我有一个看似格式良好的 CSV 文件,是通过将 Excel 文件导出为 CSV 来创建的。

However CSV.open(filename, 'r')导致CSV::IllegalFormatError.

文件中没有恶意逗号或引号,也没有我看到的任何可能导致问题的内容。

我怀疑问题可能与行结尾有关。我能够解析通过文本编辑器(Aquamacs)手动输入的数据。只是当我尝试使用从 Excel(适用于 OS X)导出的数据时,出现了问题。当我在 vim 中打开导出的 CSV 时,所有文本都显示在一行上,其中^M出现在线条之间。

从文档来看,您似乎可以提供open带行分隔符;但是我不确定在这种情况下应该是什么。


Try: CSV.open('filename', 'r', ?,, ?\r)

As cantlin https://stackoverflow.com/users/271139/cantlin注意,对于 Ruby 2 来说是:

CSV.new('file.csv', 'r', :col_sep => ?,, :row_sep => ?\r)

我很确定这些会为您提供 DTRT。您还可以“修复”文件本身(在这种情况下,保留旧的open)与以下vim命令::%s/\r/\r/g

是的,我知道该命令看起来完全是无操作,但它会起作用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ruby:无法解析在 OS X 中导出为 CSV 的 Excel 文件 的相关文章

  • 使用 py2neo 从 csv 文件创建 neo4j 图形数据库

    我目前正在攻读博士课程 并且对 Py2neo 很感兴趣 因此我使用它来使用社交图谱进行一些实验 然而我遇到了新手麻烦 抱歉问这些简单的问题 我得到了一个 xml 数据集 其中包含有关期刊出版物的数据 我已将其转换为 csv 表 大约有 70
  • NSMenu 未调用 validateMenuItem 或 menuWillOpen

    我的 Mac 应用程序有一个 NSMenu 其委托功能validateMenuItem and menuWillOpen从来没有被调用过 到目前为止 网上的解决方案都没有帮助 看来我做的一切都是对的 菜单项的选择器属于同一类 管理它的类继承
  • 如何更改 OS X 应用程序包中的可执行文件

    我想在 Firefox 启动之前和退出之后运行一个脚本 在 Ubuntu 中 我通过创建一个新的快捷方式来实现此目的 该快捷方式首先调用我的函数 然后调用 firefox 命令 然后调用我的最后一个函数 由于 firefox 命令会阻塞直到
  • 在 Windows 上安装 RMagick

    我对此进行了研究 并且在我的一台计算机上花了几个小时 大约三周前 我在我的台式计算机上安装了 RMagick 它相当复杂 我不记得我采取的具体步骤 我真的很沮丧 我已将 ImageMagick 安装到我的计算机上的目录 C ImageMag
  • 数组中 1 到 100 个奇数

    Ruby 中有什么很酷的方法可以创建一个 1 到 100 且只有奇数条目 1 3 等 的数组 我现在有一个循环 但这显然不是一个很酷的方法 有什么建议么 我当前的代码 def create 1 to 100 odd array array
  • 拖动调整 NSView(或其他对象)的大小

    我正在尝试构建一个应用程序 允许用户使用可以调整大小的矩形边界框来指定图像的多个区域 到目前为止 我已经有一个NSScrollView其中包含一个NSImageView这样用户就可以放大图像并根据需要滚动 我目前的想法是我可以使用NSVie
  • Accepts_nested_attributes_for Rails 3 中的实际形式使用

    使用 Ruby on Rails 3 我半明白accepts nested attributes for是如何的supposed工作 但我无法找出以某种形式实现这一点的实用方法 例如 如果有人想在其用户页面中添加他们最近的位置 user r
  • 为 .API 文件启用自动完成功能?

    有谁知道如何使用 N 站点上提供的 API 文件在 Notepad 中自动完成工作 在 API 文件夹中具有 XML 自动完成文件的语言中 自动完成功能工作得很好 但对于使用 API 文件的语言 ruby AutoIt 等 完全不起作用 根
  • 如何在 Mac 上运行 virtualenv python

    我正在尝试使用 virtualenv 在我的 mac 上创建虚拟 python 环境 我已经下载了 virtualenv 但是我无法运行它 因为即使我提供了正确的路径 它也找不到我的 python3 安装路径 这是我运行的命令和响应 vir
  • 如何在 Rails 3 中连接表并计算记录数?

    我有一个Collection有很多硬币的类 我正在尝试选择拥有两枚以上硬币的收藏品 目前 我可以直接通过 Ruby 来完成此操作 但效率极低 我当前的代码 collections Collection all select c c coin
  • sinatra 应用程序在运行时无法启动

    我使用的是 Ubuntu 10 10 Ruby 1 9 2 无论我做什么 我都无法在本地计算机上启动 sinatra 应用程序 你好 rb require sinatra get do Hello World end ruby hello
  • mongoid 中的嵌入文档与哈希数据类型

    我找不到任何讨论此问题的博客文章或文档 它们 嵌入式文档和哈希数据类型 非常相似 彼此相比有何好处或限制 考虑我的架构设计 class HistoryTracker include Mongoid Document include Mong
  • heroku 语言区域设置不工作 I18n::MissingTranslationData

    在我的本地电脑上一切正常 但在 heroku 上我收到错误 我的 Heroku 控制台 PC HOME PC c rails konkurranceportalen master heroku console Ruby console fo
  • Rails:将参数从视图传递到控制器

    我在 Rails 中有以下模型 class Task lt ActiveRecord Base attr accessible description name project belongs to project validates na
  • 如何告诉 Ruby 不要序列化属性或如何正确重载 marshal_dump?

    我的 AR B 中有一个不可序列化的属性 o Discussion find 6 Marshal dump o TypeError no marshal dump is defined for class Proc from irb 10
  • 如何查找重复字母最多的单词

    我的目标是找到给定字符串中重复字母最多的单词 例如 aabcc ddeeteefef iijjfff 会回来 ddeeteefef 因为 e 在这个单词中重复了五次 这比所有其他重复字符都多 到目前为止 这是我得到的 但它有很多问题并且不完
  • 日期时间到 NSDate

    如何转换字符串2010 11 19T20 00 00Z进入一个NSDate object 我尝试过使用 dateFormatter setDateFormat yyyy MM ddTHH mm ssZ 但看起来我的自定义格式样式错误 PS
  • localhost 拒绝在 chrome mac 中连接

    我正在使用 webpack dev server 使用此命令运行服务器 npm run dev 当我使用npm start 它工作得很好 但不想这样做 因为它是为了生产 到目前为止我的服务器运行良好http 本地主机 3000 http l
  • 如何在 osx 终端中返回应用程序版本

    我需要在 Mac osX 10 10 上的 sh 脚本中使用应用程序版本 以便我可以与另一个数字进行比较 以便我可以强制更新或不更新 到目前为止我已经有了这个 我使用 Firefox app 作为示例 FirefoxmdlsVersion
  • 使用 matplotlib.animation 从 CSV 文件实时绘图 - 数据绘制到第一个输入错误

    我正在尝试绘制来自不断写入 CSV 文件的传感器的数据 虽然成功创建实时绘图 但每个新数据条目都会创建一条延伸到第一个数据条目的附加线 见下文 Python 3 4 脚本 import matplotlib pyplot as plt im

随机推荐

  • 有效地查找文本文件中的最后一行[重复]

    这个问题在这里已经有答案了 我需要从许多非常大 几百兆字节 的文本文件中提取最后一行来获取某些数据 目前 我正在使用 python 循环遍历所有行 直到文件为空 然后处理返回的最后一行 但我确信有一种更有效的方法来执行此操作 使用 pyth
  • VBA Excel 简单错误处理

    我尽可能多地上网查看 除了微软支持网站 该网站由于某种原因在工作中被屏蔽 我试图简单地跳过一个错误 我在这里编写的代码经过简化 但应该以相同的方式工作 我的代码应该做什么 我的一名潜艇在循环中创建形状并命名它们 btn 1 btn 2 等
  • 无法在VS2010中调试.NET框架代码

    我正在尝试使用公共可用符号调试 NET 代码 我按照说明设置 在 工具 gt 选项 gt 调试 中 我选中了 启用 NET框架源代码步进 禁用了 仅启用我的代码 在 工具 gt 选项 gt 调试 gt 符号 中加载所有符号 我检查了这个文件
  • 图像特定区域的可点击链接

    我有一张地图图像 它在地图上有特定的区域名称 但它只是一个 PNG 图像 我希望用户能够单击地图上的名称并被带到特定的面板 例如 地图上有三个名字 如果用户单击X 100 Y 300左右 他们会被带到一个面板 而如果他们点击X 400 Y
  • 具有常量(真)值的条件运算符?

    我正在查看 OpenSSL 中使用的一些预处理器宏 我发现了以下内容crypto stack safestack h define CHECKED STACK OF type p STACK 1 p STACK OF type 0 defi
  • 在 Windows 中,如何将单个文本文件中的多行合并为一行?

    我有多个遵循此格式的标准文本文件 每个文件中的行数不同 Line1 Line2 Line3 Line4 我想将每一行合并为一行 每组字符之间有一个空格 因此文本文件将如下所示 Line1 Line2 Line3 Line3 等等 由于每个文
  • Blueprism:如何在计算阶段使用替换功能?

    我正在使用 BluePrism 从应用程序中读取文本 文本结构如下 数字因情况而异 请注意您的订单参考号 525 我需要能够从文本中提取数字 看计算阶段 有一个替换函数 replace text pattern new text 我想使用此
  • python 路径 django

    我怎样才能添加一些东西到我的 Pythonpath 文件到底位于哪里 我必须更改以添加到我的 pythonpath 中 我到底要添加什么到我的 Pythonpath 中 如果Python调用 Library Frameworks Pytho
  • 从 python 3.2 中的文件的“Content-Length”值获取文件大小

    我想要得到Content Length来自元变量的值 我需要获取要下载的文件的大小 但最后一行返回错误 HTTPMessage对象没有属性getheaders import urllib request import http client
  • 如何将令牌存储在Android的本地或会话存储中?

    我正在创建一个与 SOAP Web 服务交互以从数据库获取数据的应用程序 当用户成功登录时 它会通过网络服务生成一个令牌 稍后在其他活动中调用 Web 服务方法时将需要此令牌 我的问题是 如何在需要时将该令牌传递给下一个活动并维护它直到用户
  • 如何将 HTML 和 CSS 添加到 PDF 中 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有一个 HTML 不是 XHTML 文档 可以在 Firefox 3 和 IE 7 中很好地呈现 它使
  • x, = ... - 这个尾随逗号是逗号运算符吗?

    我不明白变量后面的逗号是什么lines means http matplotlib org examples animation simple anim html http matplotlib org examples animation
  • 使用 jQuery 获取所选选项 id

    我正在尝试使用 jQuery 根据所选选项发出 ajax 请求 有没有一种简单的方法来检索所选的选项 ID 例如 id2 使用 jQuery
  • 删除图像c#的圆形透明部分

    我正在位图上创建一个圆圈 但想在其中有一个洞 经过半个小时的搜索 我只找到了将图像裁剪为圆形的方法 困难的是 中间的孔应该像图像的其余部分一样透明 This https i stack imgur com Avdrv png是基础图像并且黄
  • JavaFX SimpleObjectProperty 与 SimpleTProperty

    使用有什么区别 简单字符串属性 vs SimpleObjectProperty or 简单整数属性 vs SimpleObjectProperty 除了返回包装器而不是原始类型之外 无论如何它都可以自动转换 API 为特定类型添加了附加功能
  • 如何设置 scons 系统包含路径

    使用 scons 我可以轻松设置我的包含路径 env Append CPPPATH foo 这传递了标志 Ifoo to gcc 不过 我正在尝试在启用大量警告的情况下进行编译 特别是与 env Append CPPFLAGS Werror
  • 谷歌地图 v3 重复标记 - 使用数组来管理标记但仍然得到重复项

    我不明白 我有一个数组来管理我添加到地图中的标记 当我更新集合时 即使我的标记数组中仍然只有正确数量的标记 标记也会重复 我确信这对我来说是一个非常简单和愚蠢的错误 但我没有看到它 m viewMarkers function data a
  • getUidTxBytes(int uid) 在 android 6.0 中始终返回 0

    我正在尝试获取所有应用程序的网络流量统计信息 我只是打印设备中每个应用程序的总网络流量 该代码在 android 4 4 和 5 1 设备中运行良好 但在 android 6 0 设备中它始终为所有应用程序返回 0 任何人都可以告诉我为什么
  • 从父级构建 Maven 模块,无需父级引用

    我已经为几个模块建立了一个反应器构建 效果很好 我的子模块没有引用父 pom xml 当我将子模块用于多个产品时 存在多个父 pom 因此无论如何我都无法将父引用放在子模块中 现在我希望父 pom 能够更改子模块中的一些设置 在不引用父 p
  • Ruby:无法解析在 OS X 中导出为 CSV 的 Excel 文件

    我正在使用 Ruby 的 CSV 库来解析一些 CSV 我有一个看似格式良好的 CSV 文件 是通过将 Excel 文件导出为 CSV 来创建的 However CSV open filename r 导致CSV IllegalFormat