ファイル操作/テキストファイルの出力
の編集
Top
/
ファイル操作
/
テキストファイルの出力
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
AutoTicketLinkName
FrontPage
MenuBar
WikiWikiWeb
お約束
その他
その他/JavaでBeep(Bell)を鳴らすサンプルソース
その他/UnsupportedClassVersionErrorの原因及び対処法
その他/シェルに終了コードを渡す方法
システム関連
システム関連/Javaの情報を取得する
システム関連/Javaを実行するOS情報を取得する
ソート
ソート/ArrayListのソートサンプル
ソート/独自クラスでキー指定のソートサンプル
ソート/独自クラスのソートサンプル
ネットワーク
ネットワーク/HTTP(GET)サンプルソース
ファイル操作
ファイル操作/basename,dirnameのサンプル
ファイル操作/CSV取込みサンプルを作ってみた
ファイル操作/サブディレクトリ内を含むファイル一覧を取得
ファイル操作/テキストファイルの出力
ファイル操作/テキストファイルの読み込み
ファイル操作/ディレクトリ配下のファイルを削除する
ファイル操作/デフォルトのファイル文字コードを確認する
ファイル操作/デフォルトの改行コードを確認する
ファイル操作/ファイルかディレクトリかを確認する
ファイル操作/ファイルの削除
ファイル操作/ファイルを追記モード開き文字列を追加する
ファイル操作/ファイル・ディレクトリの有無(存在)確認
ファイル操作/ファイル一覧を標示する
プライバシーポリシー
変数操作
変数操作/メンバ変数の初期値はどのような値になっているか
変数操作/数値から文字列に変換するサンプルソース
変数操作/文字列から数値に変換するサンプルソース
数値操作
数値操作/数値をカンマ区切りで整形したい
数値操作/数値をカンマ区切りで整形し+記号を付けたい
数値操作/数値型の最大値・最小値
文字列操作
文字列操作/文字列が数字のみで構成されているかを確認する
文字列操作/文字列のリーバス(反転)
文字列操作/英字の大文字・小文字変換サンプル
日時操作
日時操作/DATEから年月日を抽出するサンプル
日時操作/うるう年のチェックを行う
最初にお読みください
標準入出力
標準入出力/STDOUTとSTDERRに出力する方法
標準入出力/パイプによるデータを受け取る方法
環境
環境/Eclipseで変数名なども補完できるようにする
環境/native2asciiで変換された文字列をもとに戻す
環境/UbuntuにaptコマンドでNetBeansをインストールしてみる
逆引きJavaサンプル
配列等操作
配列等操作/ArrayListのリバース(反転)サンプル
配列等操作/HashMapを使ったサンプル
#navi(../) * テキストファイルの出力 [#k3131e76] JavaのOutputStreamWriterを使ってテキストファイルの作成および出力を行います。~ FileWriterでもよいのですが、文字コードを指定するのでOutputStreamWriterを使ったサンプルソースを以下に記します。 #contents *関連記事 [#b3e380b4] -[[テキストファイルの読み込みサンプル>ファイル操作/テキストファイルの読み込み]] //-[[テキストファイルの出力>ファイル操作/テキストファイルの出力]] -[[ファイルを追記モード開き文字列を追加する>ファイル操作/ファイルを追記モード開き文字列を追加する]] -[[CSV取込みサンプルを作ってみた>ファイル操作/CSV取込みサンプルを作ってみた]] * テキストファイル作成および出力のサンプルコード [#nb2e2566] 本サンプルコードの動作ですが、ファイルが既に存在する場合は削除し再作成されます。 以下にサンプルソースを2つ紹介します。~ ** サンプルプログラムの操作について [#o913cfe3] キーボードから文字を入力し、入力した文字列をファイルに出力します。~ 文字の入力を終了するには、.(dot)のみ入力してEnterキーを押してください。~ 本サンプルプログラムが終了します。 ** 紹介する2つのサンプルソース [#p4a41bbb] -1つ目 &ref(WriteText1.java); UTF-8, LF~ 1つ目は、FileOutputStream, OutputStreamWriterを使用してテキストをファイルに出力するサンプルソースです。~ OutputStreamWriterのwriteメソッドでは、自動的に改行を付与してくれないので、System.getProperty("line.separator")で、~ デフォルトの改行コードを付け、ファイルに出力しています。 #br -2つ目 &ref(WriteText2.java); UTF-8, LF~ 2つ目は、さらにPrintWriterを使用し、PrintWriterのprintlnメソッドによりファイルに出力しています。~ printlnなので、改行付きで出力されます。 * サンプルソース1 [#ta09b2a4] &ref(WriteText1.java); UTF-8, LF import java.lang.Exception; import java.io.FileOutputStream; import java.io.OutputStreamWriter; import java.io.InputStreamReader; import java.io.BufferedReader; class WriteText1 { String filename; private void setFilename(String s) { this.filename = s; } private String getFilename() { return this.filename; } private void usage() { System.err.println("Usage: java WriteText <output filename>"); System.exit(1); } WriteText1(String[] args) { if (args.length != 1) { usage(); } this.setFilename(args[0]); } private boolean inputLine(OutputStreamWriter osw) { boolean ret = true; try { System.out.print("> "); // prompt InputStreamReader isr = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(isr); String in = br.readLine(); if (in.equals(".")) { ret = false; } // input terminator else { osw.write(in + System.getProperty("line.separator")); } // output input string // br.close(); // stdinなので閉じる必要なし・閉じれない(閉じると例外発生) // isr.close(); // stdinなので閉じる必要なし・閉じれない(閉じると例外発生) } catch (Exception e) { e.printStackTrace(); System.exit(2); } return ret; } private void run() { String charcode = System.getProperty("file.encoding"); // default character code try { FileOutputStream fos = new FileOutputStream(this.getFilename()); OutputStreamWriter osw = new OutputStreamWriter(fos, charcode); while (inputLine(osw)); osw.close(); fos.close(); } catch (Exception e) { e.printStackTrace(); System.exit(3); } } public static void main(String[] args) { WriteText1 me = new WriteText1(args); me.run(); } } * サンプルソース2 [#pe883049] &ref(WriteText2.java); UTF-8, LF import java.lang.Exception; import java.io.FileOutputStream; import java.io.OutputStreamWriter; import java.io.InputStreamReader; import java.io.BufferedReader; import java.io.PrintWriter; class WriteText2 { String filename; private void setFilename(String s) { this.filename = s; } private String getFilename() { return this.filename; } private void usage() { System.err.println("Usage: java WriteText <output filename>"); System.exit(1); } WriteText2(String[] args) { if (args.length != 1) { usage(); } this.setFilename(args[0]); } private boolean inputLine(PrintWriter pw) { boolean ret = true; try { System.out.print("> "); // prompt InputStreamReader isr = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(isr); String in = br.readLine(); if (in.equals(".")) { ret = false; } // input terminator else { pw.println(in); } // br.close(); // stdinなので閉じる必要なし・閉じれない(閉じると例外発生) // isr.close(); // stdinなので閉じる必要なし・閉じれない(閉じると例外発生) } catch (Exception e) { e.printStackTrace(); System.exit(2); } return ret; } private void run() { String charcode = System.getProperty("file.encoding"); // default character code try { FileOutputStream fos = new FileOutputStream(this.getFilename()); OutputStreamWriter osw = new OutputStreamWriter(fos, charcode); PrintWriter pw = new PrintWriter(osw); while (inputLine(pw)); pw.close(); osw.close(); fos.close(); } catch (Exception e) { e.printStackTrace(); System.exit(3); } } public static void main(String[] args) { WriteText2 me = new WriteText2(args); me.run(); } } * 実行結果 [#i411d201] 上記のテキストファイル出力サンプルソースをコンパイルして実行してみます。 $ javac WriteText?.java $ java WriteText1 out1.txt > あいうえお > aiueo > . $ cat out1.txt あいうえお aiueo $ java WriteText2 out2.txt > kakikukeko > かきくけこ > . $ cat out2.txt kakikukeko かきくけこ $ ls out*.txt out1.txt out2.txt 以上、Javaでテキストファイルを出力するサンプルソースでした。
タイムスタンプを変更しない
#navi(../) * テキストファイルの出力 [#k3131e76] JavaのOutputStreamWriterを使ってテキストファイルの作成および出力を行います。~ FileWriterでもよいのですが、文字コードを指定するのでOutputStreamWriterを使ったサンプルソースを以下に記します。 #contents *関連記事 [#b3e380b4] -[[テキストファイルの読み込みサンプル>ファイル操作/テキストファイルの読み込み]] //-[[テキストファイルの出力>ファイル操作/テキストファイルの出力]] -[[ファイルを追記モード開き文字列を追加する>ファイル操作/ファイルを追記モード開き文字列を追加する]] -[[CSV取込みサンプルを作ってみた>ファイル操作/CSV取込みサンプルを作ってみた]] * テキストファイル作成および出力のサンプルコード [#nb2e2566] 本サンプルコードの動作ですが、ファイルが既に存在する場合は削除し再作成されます。 以下にサンプルソースを2つ紹介します。~ ** サンプルプログラムの操作について [#o913cfe3] キーボードから文字を入力し、入力した文字列をファイルに出力します。~ 文字の入力を終了するには、.(dot)のみ入力してEnterキーを押してください。~ 本サンプルプログラムが終了します。 ** 紹介する2つのサンプルソース [#p4a41bbb] -1つ目 &ref(WriteText1.java); UTF-8, LF~ 1つ目は、FileOutputStream, OutputStreamWriterを使用してテキストをファイルに出力するサンプルソースです。~ OutputStreamWriterのwriteメソッドでは、自動的に改行を付与してくれないので、System.getProperty("line.separator")で、~ デフォルトの改行コードを付け、ファイルに出力しています。 #br -2つ目 &ref(WriteText2.java); UTF-8, LF~ 2つ目は、さらにPrintWriterを使用し、PrintWriterのprintlnメソッドによりファイルに出力しています。~ printlnなので、改行付きで出力されます。 * サンプルソース1 [#ta09b2a4] &ref(WriteText1.java); UTF-8, LF import java.lang.Exception; import java.io.FileOutputStream; import java.io.OutputStreamWriter; import java.io.InputStreamReader; import java.io.BufferedReader; class WriteText1 { String filename; private void setFilename(String s) { this.filename = s; } private String getFilename() { return this.filename; } private void usage() { System.err.println("Usage: java WriteText <output filename>"); System.exit(1); } WriteText1(String[] args) { if (args.length != 1) { usage(); } this.setFilename(args[0]); } private boolean inputLine(OutputStreamWriter osw) { boolean ret = true; try { System.out.print("> "); // prompt InputStreamReader isr = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(isr); String in = br.readLine(); if (in.equals(".")) { ret = false; } // input terminator else { osw.write(in + System.getProperty("line.separator")); } // output input string // br.close(); // stdinなので閉じる必要なし・閉じれない(閉じると例外発生) // isr.close(); // stdinなので閉じる必要なし・閉じれない(閉じると例外発生) } catch (Exception e) { e.printStackTrace(); System.exit(2); } return ret; } private void run() { String charcode = System.getProperty("file.encoding"); // default character code try { FileOutputStream fos = new FileOutputStream(this.getFilename()); OutputStreamWriter osw = new OutputStreamWriter(fos, charcode); while (inputLine(osw)); osw.close(); fos.close(); } catch (Exception e) { e.printStackTrace(); System.exit(3); } } public static void main(String[] args) { WriteText1 me = new WriteText1(args); me.run(); } } * サンプルソース2 [#pe883049] &ref(WriteText2.java); UTF-8, LF import java.lang.Exception; import java.io.FileOutputStream; import java.io.OutputStreamWriter; import java.io.InputStreamReader; import java.io.BufferedReader; import java.io.PrintWriter; class WriteText2 { String filename; private void setFilename(String s) { this.filename = s; } private String getFilename() { return this.filename; } private void usage() { System.err.println("Usage: java WriteText <output filename>"); System.exit(1); } WriteText2(String[] args) { if (args.length != 1) { usage(); } this.setFilename(args[0]); } private boolean inputLine(PrintWriter pw) { boolean ret = true; try { System.out.print("> "); // prompt InputStreamReader isr = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(isr); String in = br.readLine(); if (in.equals(".")) { ret = false; } // input terminator else { pw.println(in); } // br.close(); // stdinなので閉じる必要なし・閉じれない(閉じると例外発生) // isr.close(); // stdinなので閉じる必要なし・閉じれない(閉じると例外発生) } catch (Exception e) { e.printStackTrace(); System.exit(2); } return ret; } private void run() { String charcode = System.getProperty("file.encoding"); // default character code try { FileOutputStream fos = new FileOutputStream(this.getFilename()); OutputStreamWriter osw = new OutputStreamWriter(fos, charcode); PrintWriter pw = new PrintWriter(osw); while (inputLine(pw)); pw.close(); osw.close(); fos.close(); } catch (Exception e) { e.printStackTrace(); System.exit(3); } } public static void main(String[] args) { WriteText2 me = new WriteText2(args); me.run(); } } * 実行結果 [#i411d201] 上記のテキストファイル出力サンプルソースをコンパイルして実行してみます。 $ javac WriteText?.java $ java WriteText1 out1.txt > あいうえお > aiueo > . $ cat out1.txt あいうえお aiueo $ java WriteText2 out2.txt > kakikukeko > かきくけこ > . $ cat out2.txt kakikukeko かきくけこ $ ls out*.txt out1.txt out2.txt 以上、Javaでテキストファイルを出力するサンプルソースでした。
テキスト整形のルールを表示する
添付ファイル:
WriteText2.java
368件
[
詳細
]
WriteText1.java
364件
[
詳細
]