文字ストリームを使用したコンソール入力

Linda Hamilton
リリース: 2024-11-11 18:50:03
オリジナル
562 人が閲覧しました

Entrada do console com o uso de fluxos de caracteres

Java でコンソール データを効率的かつ文字に優しい方法 (国際化に最適) で読み取るには、バイト ストリームの代わりに文字ストリームを使用することをお勧めします。 System.in はバイトのストリームであるため、Reader にカプセル化する必要があります。このタスクに推奨されるクラスは BufferedReader です。これは、InputStreamReader を使用してバイトを文字に変換します。

プロセスは次のように動作します:

System.in に関連付けられた InputStreamReader を作成します:

InputStreamReader fluxoEntrada = new InputStreamReader(System.in);

ログイン後にコピー

次に、この InputStreamReader を BufferedReader コンストラクターに渡します。

BufferedReader br = new BufferedReader(fluxoEntrada);

ログイン後にコピー

このように、br はコンソールに接続された文字ベースの入力ストリームになります。

文字と文字列を読み取るメソッド

  • read(): 単一の Unicode 文字を読み取り、ストリームの最後に -1 を返します。
  • readLine(): ユーザーが Enter キーを押すまで完全な行を文字列として読み取り、ストリームの最後に null を返します。

使用例:
次のコードは、コンソールから 文字 までの文字を読み取ります。次のように入力します:

char c;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter characters, period to quit.");
do {
  c = (char) br.read();
  System.out.println(c);
} while(c != '.');

ログイン後にコピー

別の例では、「stop」という単語が挿入されるまでテキスト行を読むことができます。

String str;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter lines of text.");
System.out.println("Enter 'stop' to quit.");
do {
  str = br.readLine();
  System.out.println(str);
} while(!str.equals("stop"));

ログイン後にコピー

これらのアプローチにより、特にさまざまな文字エンコーディングのサポートを必要とするプログラムの場合、キーボード データ入力がより便利で構造化されます。

以上が文字ストリームを使用したコンソール入力の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート