• 締切済み

C言語で、エクセルの中身を読みたい

C言語で、エクセルやワードの中の文字列を読み込むにはどうしたら良いのでしょうか?テキストファイルからなら1行づつ読めるのですが、エクセルやワードファイルの中身をfgets関数やfread関数を使って読み込もうとしても、文字が化けたものしか取得できません。どのようにしたら良いか教えてください。お願いいたします。

みんなの回答

  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.3

エクセルファイルはバイナリー形式になっているので、そのフォーマットを知っていないと正しく読み書きする事ができません。 BIFFのレコード http://officetanaka.net/excel/vba/tips/tips29.htm

すると、全ての回答が全文表示されます。
  • i-kujou
  • ベストアンサー率50% (13/26)
回答No.2

Windows限定とします。 Excelのファイル形式はセルの内容が単純に記述されているのではなく、シートの情報や計算式、フォーマットなどの情報が含まれているため、単純にファイルを読み込んでも内部の情報を取得することはできません。 Excelがインストールされているマシンなら、COMを利用してExcelファイルの情報を取得することができます。 "COM C Excel"などでGoogleで検索すると色々なサイトが見つかります。 参考URLのサイトなどを参照してがんばってください。

参考URL:
http://www.ujasiri.com/prglib/vc/excel/vc_excel.html
すると、全ての回答が全文表示されます。
回答No.1

Excelファイルは、CSV形式(カンマ区切り)で保存したものならば、ファイルをカンマ区切りされたテキストとして読み込むことができます。 Wordのファイルの場合は、テキストファイルで保存するのも悪くないのですが、他のプログラムを通してテキストファイルにしたものを利用する方が便利でしょう。(これを自作するのは難しすぎます) Linuxであれば、wvというパッケージの中のwvTextというソフトを用いるとWordのファイルをテキストファイルに変換できます。

すると、全ての回答が全文表示されます。

関連するQ&A