ホームページ > Java > &#&チュートリアル > プラットフォームに依存しない新しいラインキャラクターを取得するにはどうすればよいですか?

プラットフォームに依存しない新しいラインキャラクターを取得するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2025-02-07 11:13:12
オリジナル
455 人が閲覧しました

Javaでテキストを使用する場合、フォーマット出力に新しいライン文字を適切に含める必要があります。異なるオペレーティングシステムには、新しいラインキャラクターに対して異なる慣習があります:

  • Windows:これは、rn(キャリッジリターンラインフィード)を使用します
  • unix/linux:これは、n (ラインフィード)。を使用します
  • mac(pre-os x):これは、r(キャリッジリターン)を使用します。
  • すべてのプラットフォームでシームレスに動作するコードを作成するには、新しいライン文字を処理するプラットフォームに依存しない方法を使用する必要があります。この記事では、これを達成するためにJavaで利用可能なさまざまな方法を案内してください。 プラットフォームに依存しない新しいライン文字を使用して

Javaでプラットフォームに依存しない新しいライン文字を取得する推奨方法は、メソッドを使用することです。この方法は、システム依存のラインセパレーター文字列を返し、コードがオペレーティングシステムで正しく機能するようにします。 このメソッドは、コードが実行されているオペレーティングシステムに基づいて、適切なNewLine文字を返します。このアプローチは、最も信頼性が高くプラットフォームに依存しないと考えられています

プラットフォームの独立したラインセペレーターを使用するJavaの例を見てみましょう -

以下は、上記のプログラムの

output

です -

です

新しいライン文字に「n」を使用

public class NewLineExample {
   public static void main(String[] args) {
      String message = "Hello, World!" + System.lineSeparator() + "Welcome to Java!";
      System.out.println(message);
   }
}
ログイン後にコピー
ログイン後にコピー

コードでnewline Escape Sequencenを使用することもできます。ただし、このアプローチは、すべてのプラットフォームには適していない場合があります。これは、

r n
Hello, World!
Welcome to Java!
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

nはUNIX/Linuxシステムで広く使用されていますが、Windowsプラットフォームで常に正しい結果を生み出すとは限りません。 クロスプラットフォームの互換性の場合は、System.LineseParator()。

に固執することをお勧めします

以下は、nをラインセペレーターとして使用するJavaの例です。

以下は、上記のプログラムの

output

です -

です

プラットフォーム固有のラインセパレーターを取得するもう1つの方法は、system.getProperty()メソッドをパラメーターとして
public class NewLineExample {
   public static void main(String[] args) {
      String message = "Hello, World!\nWelcome to Java!";
      System.out.println(message);
   }
}
ログイン後にコピー
ログイン後にコピー
"line.separator"

を渡して使用することです。この方法は、system.lineseparator()と機能的に同等ですが、システムプロパティに依存しています。 このメソッドは、システムプロパティで定義されているように、プラットフォーム固有のラインセパレーターを取得します。このアプローチはsystem.lineseparator()よりわずかにきれいになりませんが、同様に機能します。

この例では、
Hello, World!
Welcome to Java!
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
getProperty()

Method- を使用して、基礎となるオペレーティングシステムのラインセペレーターを撤回しています。

以下は、上記のプログラムのoutputです - です

実用的な例

プラットフォームに依存しないラインセパレーターを使用してすべてのプラットフォームで動作することを保証する複数の行でテキストファイルを書き込む簡単な例を作成しましょう。

このコードは、プラットフォームに依存しない行のセパレーターを使用して、「embles.txt」というファイルに3行を書き込みます。これにより、ファイルにオペレーティングシステムに関係なく、正しい新しいラインフォーマットが保証されます。

以下は、上記のプログラムの
public class NewLineExample {
   public static void main(String[] args) {
      String message = "Hello, World!" + System.lineSeparator() + "Welcome to Java!";
      System.out.println(message);
   }
}
ログイン後にコピー
ログイン後にコピー
output

です - です 上記のプログラムを実行した後、

example.txt
Hello, World!
Welcome to Java!
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ファイルのコントネットは以下に示すように -

結論

複数のオペレーティングシステムで実行する必要があるJavaコードを作成する場合、プラットフォームに依存しない方法で新しいライン文字を処理することが重要です。 system.lineseparator()を使用することにより、コードがどこで実行されても新しい行を正しく処理できるようにします。
public class NewLineExample {
   public static void main(String[] args) {
      String message = "Hello, World!\nWelcome to Java!";
      System.out.println(message);
   }
}
ログイン後にコピー
ログイン後にコピー
よくある質問

以下は、いくつかの非常によくある質問(FAQ)です。

の違いは何ですか

System.LineseParator()は、プラットフォーム固有のNewLine文字を返します。 nは、UNIX/Linuxシステムで一般的に使用されている新しいライン文字ですが、すべてのプラットフォームでは正しく機能しない場合があります。
はい、WindowsにRNを使用できますが、コードがクロスプラットフォームであることを意図している場合はお勧めしません。 system.lineseparator()。

を使用するのが最善です

以上がプラットフォームに依存しない新しいラインキャラクターを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
最新の問題
ヘルプ: JAVA 暗号化データ PHP 復号化
から 1970-01-01 08:00:00
0
0
0
JAVAをインストールする
から 1970-01-01 08:00:00
0
0
0
Javaをインストールできません
から 1970-01-01 08:00:00
0
0
0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート