my notebook blog : java

Java でディレクトリを確実に削除するコード

Java.io.Fileには、delete() というメソッドがあるので、それを呼び出せば、ファイルやディレクトリは削除できる。 ただし、ディレクトリの場合、その中にファイルやサブディレクトリがあると削除が失敗する。
そこで以下のように再帰的にサブディレクトリにさかのぼって、ファイルを消した上で、ディレクトリを消すという方法で、削除する。

continue reading……

Javaでzipを展開して、再度zipアーカイブを作成 ... OfficeOpenXMLデータの操作のために

MSOffice2007 では、docx,xlsx,pptx のように 拡張子に x が追加されているが、この実体は、zip ファイルで中身はXML等で構成されている。 したがって、データファイルだけを展開して中身を書きかえて、再度 zip アーカイブに戻してやれば、MSOffice なしで、内容を操作することができる。

今回はそのためのJavaコード。 このサンプルでは中身の操作は一切しないで、単に既存の sample.pptx ファイルを作業ディレクトリに展開して、その後、result.pptx ファイルにzipアーカイブとして保存しているだけ。

continue reading……

Processing + Java で Hello World(ハローワールド)...Javaアプリケーションにプロセッシングのスケッチを埋め込む方法

hello-world

Processingは、通常 PDE と呼ばれる統合開発環境でスケッチしながら使います。 スケッチの成果物は、アプレットとして書き出して単体配布できます。これは、これで便利な機能ですが、Javaプログラマであれば、直接JavaにProcessingを埋め込んで使った方が早い場合があります。 Eclipse上で開発すれば、コード補完も効きますからPDEを使わなくても、スケッチもはかどります。

continue reading……

Processing+POIをエクセルグラフウィザードの代替として使う

bar-chart

Processingは、簡易スクリプト的な記述でイラスト画像を(対話的に)作成できるツールです。
他にもいろいろな活用方法があるので詳しくは http://www.processing.org/http://processing.jp/をご覧ください。

continue reading……

Java Swing によるカスタムボーダー ( custom border ) の作成

javax.swing.border パッケージには、あらかじめ便利なボーダーがいろいろと揃っています。 通常は、javax.swing.BorderFactoryを通じて各種ボーダーのインスタンスを取得して使いますが、それらSwing標準のボーダー、およびその組み合わせで間に合わない場合は、自作します。 今回は、ツールバーとメインパネルの間に引くボーダーを 実現する UnderlineBorder.java を作成しました。

underlineborder.png

2つのボタンの下に引かれている線がUnderlineBorderクラスで実現されています。 今回は、EtchedBorder に似せて線を描画しました。

continue reading……

JavaでPluginを実現する方法(改良版)

前回 の例では、プラグインを使う側のクラスにプラグインしたクラス名を知らせる必要がありました。

今回は、その情報をプラグインjar(この例では mycolor.jar)から直接取得できるようにし、プラグインを使う側は、単にプラグインされたjarファイル名だけを知っていればプラグインを使えるように変更しました。

今回の改良点として mycolor.jar にマニフェスト情報としてプラグインするクラス名を記述しておくことで、mycolor.jar だけ渡せば、プラグインを使えるようにします。

continue reading……


« Newer PostsOlder Posts »