- - PR -
SWTを用いてファイルを取得し、文字列毎に区切りたいのですが
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-05-31 17:46
お世話になります。
SWTを使用し、CSVViewerのソースを参考にし、LogViewerを現在作成しているものです。 「*.log」ファイルを取得し、画面上の一覧に表示させたいのですが CSVの場合はカンマ区切り一定なので、カンマををsplitし文字列を区切り、表示させてあげればよかったのですが、 区切りたい文字列が一定では無い場合はどうすればいいか悩んでおります。 ↓(取り込むファイルの中身はこのような感じです。 2006-05-26 15:40:16,029 DEBUG util.DBAccess (DBAccess.java : 357) - ■終了15:40:16.029 2006-05-26 15:40:16,032 DEBUG util.Utility (Utility.java : 230) - 取得件数:40 ↓(結果イメージはこういう感じに区切りたいのです。 「 | 」←区切り線 2006-05-26 | 15:40:16,029 | DEBUG | util.DBAccess (DBAccess.java : 357) | - ■終了15:40:16.029 2006-05-26 | 15:40:16,032 | DEBUG | util.Utility (Utility.java : 230) | - 取得件数:40 ↓CSVViewerの時のソースです。
わかりにくい説明になってしまいましたが、ご教授して頂けると幸いです。 | ||||
|
投稿日時: 2006-05-31 20:39
汎用的にと考えなければ、方法はあると思います。
すぐに思いつくのはこういう方法でしょうか。 " "区切りでsplitして、 1番目、2番目、3番目、4番目までは" | "を間に挟んで連結し、 4番目、5番目、6番目、7番目の間は" "を挟んで連結し、 7番目と8番目の間に" | "をはさみ、 9番目以降を連結するときは" "を間に挟む。 あと、多分log4jのログファイルだと思うのですが、それなら 欲しい形式で出力するようにしてしまうのも手かもしれません。 このあたりを参考にどうぞ。 http://www.javaroad.jp/opensource/js_log4j2.htm | ||||
|
投稿日時: 2006-06-01 09:07
ご指摘通りlog4jのログファイルです。
何番目の何番目でsplitで区切る。 を行ってしまうと、SQLのログや他のログに対応できなくなってしまうため、 頂いたURLを参考に形式で出力をしてみる事にします。 koeさん有難うございました。 |
1