登录 注册
数据分析与数据处理开发者工具
2,878
Stars
—
Forks
0
Watchers
—
Open Issues
待补全
许可证
Ruby
语言
—
创建时间
最近更新

项目能做什么

为多种电子表格格式(如 Excel、CSV 等)提供统一读取接口的 Ruby 库。
来源:AI 基于仓库事实生成 · 内容以仓库实际 README 为准

使用说明 查看原始 README 原仓库文档

中文使用说明暂未生成。下面保留原仓库 README 摘录,命令与配置均以原文为准。
原始 README 摘录(英文原文,节选前 3000 字符)
# Roo

[![Build Status](https://img.shields.io/github/actions/workflow/status/roo-rb/roo/ruby.yml?style=flat-square)](https://travis-ci.org/roo-rb/roo) [![Maintainability](https://api.codeclimate.com/v1/badges/be8d7bf34e2aeaf67c62/maintainability)](https://codeclimate.com/github/roo-rb/roo/maintainability) [![Coverage Status](https://img.shields.io/coveralls/roo-rb/roo.svg?style=flat-square)](https://coveralls.io/r/roo-rb/roo) [![Gem Version](https://img.shields.io/gem/v/roo.svg?style=flat-square)](https://rubygems.org/gems/roo)

Roo implements read access for all common spreadsheet types. It can handle:
* Excel 2007 - 2013 formats (xlsx, xlsm)
* LibreOffice / OpenOffice.org formats (ods)
* CSV
* Excel 97, Excel 2002 XML, and Excel 2003 XML formats when using the [roo-xls](https://github.com/roo-rb/roo-xls) gem (xls, xml)
* Google spreadsheets with read/write access when using [roo-google](https://github.com/roo-rb/roo-google)

## Important note about next major release

There a plan to make a new major release which will have better support for Ruby 3.x
Please leave your comments there - https://github.com/roo-rb/roo/issues/630

## Installation

Install as a gem

    $ gem install roo

Or add it to your Gemfile

```ruby
gem "roo", "~> 3.0.0"
```
## Usage

### Opening a spreadsheet

You can use the `Roo::Spreadsheet` class so `roo` automatically detects which [parser class](https://github.com/roo-rb/roo/blob/master/lib/roo.rb#L17) to use for you.
```ruby
require 'roo'

file_name = './new_prices.xlsx'
xlsx = Roo::Spreadsheet.open(file_name)
xlsx.info
# => Returns basic info about the spreadsheet file
```

``Roo::Spreadsheet.open`` can accept both string paths and ``File`` instances. Also, you can provide the extension of the file as an option: 

```ruby
require 'roo'

file_name = './rails_temp_upload'
xlsx = Roo::Spreadsheet.open(file_name, extension: :xlsx)
xlsx.info
# => Returns basic info about the spreadsheet file
```

On the other hand, if you know what the file extension is, you can use the specific parser class instead:
```ruby
require 'roo'

xlsx = Roo::Excelx.new("./new_prices.xlsx")
xlsx.info
# => Returns basic info about the spreadsheet file
```

### Working with sheets

```ruby
ods.sheets
# => ['Info', 'Sheet 2', 'Sheet 3']   # an Array of sheet names in the workbook

ods.sheet('Info').row(1)
ods.sheet(0).row(1)

# Set the last sheet as the default sheet.
ods.default_sheet = ods.sheets.last
ods.default_sheet = ods.sheets[2]
ods.default_sheet = 'Sheet 3'

# Iterate through each sheet
ods.each_with_pagename do |name, sheet|
  p sheet.row(1)
end
```

### Accessing rows and columns

Roo uses Excel's numbering for rows, columns and cells, so `1` is the first index, not `0` as it is in an ``Array``

```ruby
sheet.row(1)
# returns the first row of the spreadsheet.

sheet.column(1)
# returns the first column of the spreadsheet.
```

Almost all methods have an optional argument `sheet`. If this parameter is omitted, the default_sheet will be us
阅读完整原文

项目深度分析 AI 生成

Spreadsheet-to-API 数据管道云服务 (SaaS)

产品构想基于 Roo 构建云端微服务,用户上传任意 Excel/ODS/CSV 即可自动推断表头、校验类型并直接生成标准 RESTful/GraphQL API 或同步到数据库/Webhook。
核心功能自动表头识别与类型推断、多格式(xlsx/ods/csv)统一解析、Webhook 通知、脏数据校验过滤与错误提示下载。
目标用户低代码/无代码开发者、小型初创公司技术人员、需要频繁批量导入业务表格的运营团队。
难度/周期中等 · 1-2 个月 · 成本:极低(基础云服务器、对象存储、域名解析)
收费模式按解析文件数/行数计费(Freemium,订阅制月费)。
竞争风险市面上存在较多成熟数据集成平台(如 Flatfile),竞争激烈且获客成本高。
依据 AI推测

企业级大文件解析与数据清洗中间件 (Roo Enterprise Add-on)

产品构想针对 Roo 在解析超大 Excel 文件时内存消耗高的问题,提供商业版流式解析优化引擎与预设企业级数据校验规则包(如税务发票、财务流水、电商库存对账)。
核心功能超低内存消耗的流式解析加速、损坏/不规则格式容错修复、字段级数据合规与校验规则库、商业授权支持。
目标用户使用 Ruby/Rails 的成熟企业开发者、金融或电商类系统维护工程师。
难度/周期高 · 2-3 个月 · 成本:低(主要为研发与测试用例集建设成本)
收费模式商业源码授权、年费技术支持订阅(Dual-licensing / Commercial license)。
竞争风险Ruby 技术栈受众整体体量收缩;大部分中小型文件现有开源版已足够使用。
依据 尚需验证的假设

多格式电子表格数据提取与归一化微服务 (Self-hosted / Docker)

产品构想打包开箱即用的轻量级 Docker 容器服务,提供统一的 HTTP API 接收各类电子表格并输出标准 JSON,方便非 Ruby 栈(如 Node.js、Go、Python)免配复杂依赖直接集成多格式解析能力。
核心功能Docker一键部署、全格式(xlsx/ods/xls/csv)统一输出结构、大文件异步处理与任务状态查询、轻量 Web 预览端。
目标用户不想维护复杂 Office/OpenOffice 解析环境的全栈独立开发者或微服务架构团队。
难度/周期低 · 2-4 周 · 成本:极低(仅开发与文档维护)
收费模式一次性买断镜像/源码、按节点订阅的技术支持。
竞争风险替代方案极多(如 Python 的 pandas/openpyxl 方案通常更流行),单独付费壁垒较低。
依据 尚需验证的假设
AI 基于仓库公开数据分析生成,含推测成分,不构成收益承诺。
报告会保存到 个人中心

竞品与相似项目 GitHub Search 真实检索

相似项目数据正在完善中,暂不展示(避免误导)

项目优势与风险

技术成熟度创建时间待补全,最近推送 ,发布过 7 个 Release
社区活跃Star 2,878 / Fork 0 / Issue 0(数据支持,可自行核实)
许可证未检测到(需人工确认)
主要风险上游项目方向可能变化;同赛道竞争者较多(见竞品表);热度与需求不完全等价

安装与使用

此项目未提供 Docker 镜像,安装步骤以原仓库 README 为准(涉及依赖安装与环境配置,对新手门槛较高)。