ruby-on-rails - 如何从 ruby on rails 和 nodejs 中的 csv 文件中读取第 2 表
问题描述
我在 excel 中编写了一个CSV 文件,其中有多张工作表,如sheet1、sheet2、sheet3具有不同的信息,现在我想读取 CSV 文件。如何使用和访问sheet2、sheet3 ...中的信息。ruby on rails
Nodejs
解决方案
也许使用更合适的工具来完成这项工作可能会对您有所帮助,有很多可用的工具,我最喜欢的是 RubyXL,它只会让您遍历工作表或使用特定的工作表。
例如 Gemfile
gem 'rubyXL'
然后从命令行安装 gem
bundle install
打开电子表格
xlfile = RubyXL::Parser.parse('my_xl_file')
显然用您的 xl 文件所在的任何路径以及文件名替换“my_xl_file”
并按名称阅读一张纸
xlsheet = xlfile['WorkSheetName']
或者通过工作表位置迭代您可以使用的工作表
xlsheet = xlfile[0]
或 xlsheet = workbook.first xlsheet = workbook.next
如果要循环,请使用 .count 获取张数,然后访问单元格,您只需要行 col (row,col) 例如第一个单元格
row = 1
col = 1
cell_value = xlsheet[row][col].value
在这里阅读更多https://github.com/weshatheleopard/rubyXL
同样,如果上述不适合,还有电子表格 gem。这将以类似的方式与专有 xls 文件一起使用
https://github.com/zdavatz/电子表格
所以回答你的问题
如何从 ruby on rails 和 nodejs 中的 csv 文件中读取第 2 表
我的回答是“不要”,请使用更好的工具来完成这项工作
但是,如果您真的需要使用 nodeJS,那么以下内容应该会有所帮助
默认情况下,它会读取文档中的第一张纸。如果您的电子表格中有多个工作表,则将 sheet: number(工作表索引,从 1 开始)或 sheet: string(工作表名称)作为选项参数的一部分传递(options.sheet 默认为 1):
readXlsxFile(file, { sheet: 2 }).then((data) => {
...
})
推荐阅读
- r - 基于部分字符串匹配比较两个数据帧的两列
- c - 尝试在 C 中创建基本套接字连接并在 accept() 上运行到无限循环
- excel - 从 excel 宏更改 word doc 中的链接
- asp.net-core - 将带有列表的 JSON 发送到控制器
- svg - 如何旋转svg圆
- docker - 在 docker build 中连接到 dotnet.testcontainer 失败并显示消息“无法分配请求的地址 /var/run/docker.sock”
- r - 在 R 中满足条件时跳过一行代码
- java - openjfx javafxplugin jar创建中的多个服务文件冲突
- javascript - 不了解递归的下一次迭代
- tableau-api - 处理变化数据的“Tableau”方式是什么?