CodeGym /Java Blog /ランダム /Java PrintWriter クラス
John Squirrels
レベル 41
San Francisco

Java PrintWriter クラス

ランダム グループに公開済み

JavaのPrintWriterクラスとは何ですか?

「PrintWriter は、コンソールまたは Java のファイルにテキストの形式で、int、float、double、String、Object などのあらゆる形式のデータを書き込むために使用されるクラスです。」
たとえば、PrintWriter オブジェクトを使用して、データをファイルに記録したり、コンソールに印刷したりできます。

他の OutputStream が利用可能な場合に、なぜ PrintWriter を使用するのでしょうか?

コンソールにデータを印刷する最も一般的な方法は、System.out.printメソッドを使用することです。ただし、 PrintWriterオブジェクトを使用してグローバル アプリケーションを公開するときに、指定されたロケール(地域標準)に従って形式をカスタマイズする方が簡単です。この投稿の後半では、システムに応じて Locale を使用する方法を検討します。

PrintWriter クラスの使用方法

PrintWriterを使用するには、 java.io.PrintWriterクラスをインポートする必要があります。次に、そのオブジェクトを初期化した後、必要に応じて、コンソール上での書き込みまたはファイルへの書き込みに使用できます。コンソールとファイルのPrintWriterクラスを初期化する両方の方法を見てみましょう。複数の異なるコンストラクターが存在します。ただし、ここではまず最も簡単なものを紹介します。

PrintWriter によるコンソール出力

以下は、コンソールにテキストを印刷するための PrintWrtierオブジェクトです。

PrintWriter consoleOutput = new PrintWriter(System.out);
ここでは、コンソールに書き込むために System.outオブジェクトがコンストラクターに渡されます。

PrintWriterによるファイル出力

ファイルにテキストを書き込むための PrintWriterオブジェクトを次に示します。

PrintWriter fileOutput = new PrintWriter("FileOutput.txt");
このコンストラクターは、ファイル名として文字列入力を受け取ります。指定した名前のファイルを作成し、そこにテキストデータを書き込みます。

PrintWriterクラスのメソッド

Java PrintWriterクラスには、便利なメソッドが多数付属しています。彼らを参加させるだけで飲み込むのはさらに困難です。それでは、それぞれを例で見てみましょう。それらは何ですか、そしてそれらを簡単に使用するにはどうすればよいですか。

例1

この例では、コンソールで印刷するために PrintWriterオブジェクトを使用する方法を示します。

import java.io.PrintWriter; 

public class PrintWriterDemo {

	public static void main(String[] args) throws Exception {


            // by importing the java.io.PrintWriter class
		PrintWriter consoleOutput = new PrintWriter(System.out);

		consoleOutput.printf("Hey there! This is %S.\n", "Lubaina Khan");
		consoleOutput.print("Today you're exploring the PrinWriter class with Code Gym. ");
		consoleOutput.println("Hope you're having fun!");
		consoleOutput.append("Patience is the key when learning new concepts.\n");
		consoleOutput.append("It all boils down to practise and persistence. :)");

		consoleOutput.flush();
		consoleOutput.close();
	}
}

出力

ちょっと、そこ!ルバイナ・カーンです。今日は、Code Gym を使用して PrinWriter クラスを探索します。楽しんでいただければ幸いです! 新しい概念を学ぶときの鍵となるのは忍耐です。すべては練習と粘り強さに尽きるのです。:)

PrintWriterクラスの使用メソッド


printf(String str, Object arguments); 
printf ()メソッドは、印刷する文字列の形式を受け取ります。ここで、プレースホルダー%S は、文字列の次に渡される大文字の引数に置き換えられます。

print(String str);
このメソッドは、 PrintWriterオブジェクト を使用して、渡された文字列を印刷します。

println(String str);
文字列の内容の後に改行が出力されます。

append(CharSequence cs);
追加に渡された文字シーケンスは、PrintWrtierオブジェクトに追加されます。

flush();
PrintWriterオブジェクト の内容を空にします。

close();
書き込みストリームを閉じ、割り当てられているリソースを解放します。

例 2

この例では、ファイルにデータを書き込むための PrintWriterクラスの使用法を示します。

import java.io.PrintWriter;
import java.util.Date;
import java.util.Locale;

public class PrintWriterDemo {

	public static void main(String[] args) throws Exception {

		try {
                  // by importing the java.io.PrintWriter class
			PrintWriter fileOutput = new PrintWriter("FileOutput.txt");

		      fileOutput.printf(Locale.getDefault(), "Hi, What's the day today? %s.\n", new Date());

			fileOutput.print("Here's an implementation of PrinWriter class for file writing.\n");
			fileOutput.println("Hope Code Gym made it simpler for you to understand.");
			fileOutput.append("One step at a time, and off you go!", 0, 35);

			fileOutput.flush();
			fileOutput.close();

		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

出力

こんにちは、今日は何の日ですか? Sun Jul 25 17:30:21 PKT 2021. ファイル書き込み用の PrinWriter クラスの実装です。Hope Code Gym を使用すると、より簡単に理解できるようになります。一度に一歩ずつ、そして出発しましょう!

PrintWriterクラスの使用メソッド

コンソールでの書き込みとは異なる、ファイルの書き込みに使用されるメソッドについて説明します。

printf(Locale locale, String str, Object args); 
ここでロケールを渡すことができます (一貫性のためにシステムのデフォルトを使用しました)。必要に応じて任意のロケールを使用できます。これは、地域ベースの書式設定に準拠します。実装の残りの部分は以前に使用したものと同じです。

append(CharSequence cs, int beginningIndex, int endingIndex);
渡されたCharSequenceの開始インデックスと終了インデックスを指定することで、その チャンクを追加できます。ここでは最後のインデックスを使用しました。これを試してみて、さまざまな出力を確認できます。

try{
   ...
} catch (Exception e){
   ...
}
ファイル書き込み時には必ずtry-catchブロックを使用します。これは、システム上でファイルにアクセスしたり作成したりする際の例外 (権限の問題など) を回避するためです。

結論

以上が Java PrintWriterクラスの使い方の簡単な紹介でした。それがあなたにとって圧倒されなかったことを願っています。その場合は、それぞれの見出しを理解し、練習しながら進めることをお勧めします。何か障害があった場合には、いつでもお待ちしております。疑問を持ち続け、成長し続けてください。
コメント
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION