じぶんメモ

プログラミングのメモ、日常のメモとか。

Java

JavaでのZipファイル作成

JavaでのZipファイル作成方法を調査した。 一例なので、他の方法もあるかも。 肝心なのは、ZipArchiveOutputStreamのflush()を使用して、1ファイルずつZipに書き込んでいるところ。 flushを使わず、全てのファイルをメモリに格納し、 Zipを生成すると、 OutO…

Javaでのファイル出力(Struts2)

Java、Struts2でファイル出力をする方法を調査した。 OutputStreamWriterを使用し、responseにByteArrayOutputStreamから変換したByteArrayInputStreamを設定する。 @Result(name="success", value = "inputStream", params = { "inputName", "inputStream",…

Javaでファイルダウンロード

Javaでファイルをダウンロードする方法について調査した。 ファイルをBufferedInputStreamにし、viewへのリターン時にアノテーションでパラメータとして設定する。 以下Struts2を使用した実装例。 @Result(name="success", value = "inputStream", params = …

Javaでのファイルの存在チェック

File.exists()がよさげ。 // 同名のファイルが存在する場合はシステム日付をファイル名に付与 File file = new File(uploadDir + uploadFileName); if (file.exists()){ System.out.print("ファイルあるよー"); }

Javaでのファイルアップロード

Javaでファイルアップロードを実装する方法を調べた。 FileUtilsのcopyFileが使い勝手が良さそう。 *画面側

Javaでバイト数での空白埋め

空白埋めにはString.format("%10s", value)を使用すれば良いが、 String.format()はマルチバイトも1文字として認識するため、 固定長ファイル出力など、バイト数での空白埋めをするには個別で実装する必要がある。 以下文字をSJISとして扱った場合の空白埋め…

OutputStream から InputStream への変換

// baosの生成 ByteArrayOutputStream baos = new ByteArrayOutputStream(); // baosへの書込 baos.write(・・・); ・・・ // baosのからbaisへの変換 bais = new ByteArrayInputStream(baos.toByteArray());

Javaで文字コードを指定したファイル出力

文字コードを指定してファイル出力する際は、OutputStreamWriterを使用する。 import java.io.FileOutputStream; import java.io.OutputStreamWriter; public void outputFile() { FileOutputStream outputStream = null; OutputStreamWriter outputStreamWr…

Struts2で不要なtableタグを生成させないようにする。

strutsでtspに記述するUIタグ(<s:textfield>など)は、 html生成時に不要なtableタグを生成することがある。 レイアウトが思ったように組めなくなるので、非常に困る。 struts.xmlに以下の記述を追加することで、tableタグが生成されないようになる。 <struts> <constant name="struts.ui.theme" value="simple" /> </struts></s:textfield>

MacでのJava開発構築

JRE(動作環境)の導入 Oracleの公式ページよりダウンロード。 落としたファイルを解凍し、実行。 JDK(開発環境)の導入 同じくOracleから落としてインストール。 バージョンの確認。 java -version tomcatの導入 Homebrewで落とせる。 brew install homebrew/v…