- blogs:
- cles::blog
2015/01/03

Ruby で .xlsx ファイルの中身を読み取る


以前、Java で Apache POI を使って Excel ファイルを読み取るプログラムを書きましたが、今回は Ruby で .xlsx ファイルの読み取りに挑戦します。昔、MSMQ を呼び出した時のように WIN32OLE*1 を使う手もあるのですが、Windows 環境専用になってしまうので今回は適当な Gem を導入することにしました。
.xlsx を読み込むことができる Gem としては roo-rb/roo や weshatheleopard/rubyXL がよく使われているようですが、今回は読み込みのみの操作なので前者の Roo を使ってみます。
以下、作業メモ。
† インストール
導入はいつも通り gem install roo で一撃です。
† 簡単なサンプルを動かしてみる
セルは行番号と列番号を指定して取り出す方式なので、以下のような感じにするとtsv形式で値を取り出すことができます。
意外とスッキリ書けるのでいいですね。
roo_test.rb
require 'rubygems'
require 'roo'
s = Roo::Excelx.new("Book1.xlsx")
s.default_sheet = s.sheets.first
s.first_row.upto(s.last_row) do |row|
cols = s.first_column.upto(s.last_column).map do |col|
s.cell(row, col)
end
puts cols.join("\t")
end
トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/7308
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
サイト内検索
検索ワードランキング
へぇが多いエントリ
閲覧数が多いエントリ
1 . アーロンチェアのポスチャーフィットを修理(114433)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(112953)
3 . 年次の人間ドックへ(112378)
4 . 2023 年分の確定申告完了!(1つめ)(111948)
5 . 三菱鉛筆がラミーを買収(111821)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(112953)
3 . 年次の人間ドックへ(112378)
4 . 2023 年分の確定申告完了!(1つめ)(111948)
5 . 三菱鉛筆がラミーを買収(111821)
cles::blogについて
Referrers