ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

Excelのxlsxファイルの中身-えっ、形態素解析した状態で、文字列入ってない??

2010-02-22 09:40:32 | Officeソフト&VBA


 Excelのxlsxファイルの中身は、xml表現されたexcelデータがzipで固められていることは知られている。

 で、いま、xlsxファイルが見られる環境じゃないのに(つまり、Excel2003しか持ってないのに)、xlsxファイルを見なきゃいけない状況になって、コンバーターとか使えば開けるんだろうけど、それも面倒なので、ZIPを回答してみてびっくらこ(@_@!)というので、メモメモ。

まず、xml表現されたexcelデータを獲得するまで

(1)「なんとかかんとか.xlsx」の拡張子を「なんとかかんとか.zip」に変える
(2)(WindowsXP以降のOSを使っていたら)(1)のファイルを右クリックして、
   「すべてを展開」を選択、ZIPを解凍する
(3)できたフォルダ(「なんとかかんとか」)の中に、「xml表現されたexcelデータ」
   が入っている。

このフォルダ(「なんとかかんとか」)をダブルクリック。
(4)中に、「xl」というフォルダがある。そこをダブルクリック
(5)「xl」フォルダの中に「worksheets」というフォルダがある。それをダブルクリック
(6)「worksheets」の中に、シートのxml表現されたものがある。それをダブルクリック。
   →IEが入っていて、xmlがIEに結びついている場合。
    そうでなければIEからそのファイルを開くなり、エディタで開くなり・・・

そうすると、シートのXML表現が見れるけど、それでびっくる一気飲み(@_@!)
構造はこんな感じ

worksheet
	sheetViews
		sheetView
	sheetData
		row
			c
				f
				v



つまり、データは、sheetDataタグ内にあり、rowで各行ずつ入っていて、その中に、いくつかのc(セル)タグがある。
このセルタグ8c)の

  引数r がセルの位置("A1"とか、"E5"とか)をあらわし、
  子要素vが値
  子要素fが関数

をしめす。

ただし、文字列に関しては、vが値を示すのではなく、値のインデックスを示す。
(cタグの引数tがsのものが、文字列のようだ)

で、それら文字列は、(4)ででてきたxlフォルダの中、(つまり、worksheetsとフォルダと同列)に
sharedStrings.xmlというのがあって、そこに入っている。

そのxmlを開くと、siごとに文字があって、siの直下のtが文字列・・・なのはいいんだけど、
rPhっていうタグがあり、その中に、データが形態素解析された形で入ってるんですけど(@_@!)
まじっすかあ・・・

なんか、xlsxファイルすげー・・・
もちょっと、しらべてみたくなった。

この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« IFRSのタクソノミとか、「日... | トップ | JMeterダウンロード→テスト実... »
最新の画像もっと見る

Officeソフト&VBA」カテゴリの最新記事