Javaでの文字列への改行文字の追加
1. 概要
文字列のフォーマットとテキスト出力の生成は、プログラミング中に頻繁に発生します。 多くの場合、出力をフォーマットするために文字列に改行を追加する必要があります。
改行文字の使用方法について説明しましょう。
2. 文字列に改行文字を追加する
オペレーティングシステムには、改行の開始を示す特殊文字があります。 たとえば、Linuxではは「\n」で示され、はラインフィードとも呼ばれます。 Windowsでは、新しい行は「\ r \ n」を使用して示され、キャリッジリターンおよびラインフィード、またはCRLFと呼ばれることもあります。 ]。
Javaでの改行の追加は、「 \ n」、「 \ r」、、または「 \ r
2.1. CRLFラインブレイクの使用
この例では、2行のテキストを使用して段落を作成します。 具体的には、line2をline1の後の新しい行に表示する必要があります。
Unix / Linux / New MacベースのOSの場合、「 \ n」を使用できます:
String line1 = "Humpty Dumpty sat on a wall.";
String line2 = "Humpty Dumpty had a great fall.";
String rhyme = line1 + "\n" + line2;
WindowsベースのOSを使用している場合は、「 \ r \ n」:を使用できます。
rhyme = line1 + "\r\n" + line2;
古いMacベースのOSの場合、「 \ r」を使用できます:
rhyme = line1 + "\r" + line2;
新しい行を追加する3つの方法を示しましたが、残念ながら、それらはプラットフォームに依存します。
2.2. プラットフォームに依存しないラインセパレーターの使用
コードをプラットフォームに依存させたくない場合は、システム定義の定数を使用できます。
たとえば、 System.lineSeparator()を使用して行区切り記号を指定すると、次のようになります。
rhyme = line1 + System.lineSeparator() + line2;
または、 System.getProperty(“ line.separator”)を使用することもできます。
rhyme = line1 + System.getProperty("line.separator") + line2;
2.3. プラットフォームに依存しない改行文字の使用
行区切り文字はプラットフォームに依存しませんが、文字列を連結する必要があります。
System.out.printfやString.formatのようなものを使用している場合、
rhyme = "Humpty Dumpty sat on a wall.%nHumpty Dumpty had a great fall.";
これは、文字列内に System.lineSeparator()を含めるのと同じですが、文字列を複数の部分に分割する必要はありません。
3. HTMLページに改行文字を追加する
HTMLページの一部である文字列を作成していると仮定します。
。
Unicode文字「
」を使用することもできます (キャリッジリターン)と「
」 (ラインフィード)。 これらの文字は機能しますが、すべてのプラットフォームで期待されるとおりに機能するわけではありません。 代わりに、を使用することをお勧めします
改行用。
さらに、一部のHTML要素で“ \ n” を使用して、行を分割することができます。
全体として、これらはHTMLで線を切る3つの方法です。 使用しているHTMLタグに応じて、どちらを使用するかを決定できます。
3.1. HTMLブレークタグ
HTMLブレークタグを使用できます
行を壊す:
rhyme = line1 + "<br>" + line2;
The
行を区切るためのタグは、次のようなほとんどすべてのHTML要素で機能します 、
、
、
等 ただし、では機能しないことに注意してくださいタグ。
3.2. 改行文字
使用できます ‘\ n’ テキストがで囲まれている場合に行を分割するには
またタグ:
rhyme = line1 + "\n" + line2;
3.3. Unicode文字
最後に、Unicode文字を使用できます 「&#13;」 (キャリッジリターン)と 「&#10;」 (ラインフィード)ラインを壊します。 たとえば、タグは、次のいずれかを使用できます。
rhyme = line1 + "
" + line2;
rhyme = line1 + "
" + line2;
のために
タグ、以下の両方の行が機能します:
rhyme = line1 + "
" + line2;
rhyme = line1 + "
" + line2;
4. \nと\rの違い
\ r および\n は、それぞれ13(CR)および10(LF)のASCII値で示される文字です。 それらは両方とも2つの線の間の切れ目を表します、しかし、オペレーティングシステムはそれらを異なって使用します。
Windowsでは、2文字のシーケンスを使用して改行を開始し、CRの直後にLFを続けます。 逆に、Unixライクなシステムでは、LFのみが使用されます。
Javaアプリケーションを作成するときは、使用する改行文字に注意する必要があります。これは、アプリケーションが実行されるオペレーティングシステムによってアプリケーションの動作が異なるためです。
最も安全で相互互換性のあるオプションは、
5. 結論
この記事では、Javaで文字列に改行文字を追加する方法について説明しました。
また、 System.lineSeparator()および System.getProperty( “line.separator”)を使用して、新しい行のプラットフォームに依存しないコードを作成する方法も確認しました。
最後に、HTMLページを生成する場合に備えて、新しい行を追加する方法について説明しました。
この記事の完全な実装は、GitHubのにあります。