[AD] Scalaアプリケーションの開発・保守は合同会社ミルクソフトにお任せください
この記事では、システムから改行文字を取得する方法について解説します。
改行文字はシステムプロパティ「line.separator
」にあり
システムの改行文字はシステムプロパティのline.separator
に定義されています。
したがって、System.getProperty("line.separator")
を実行すると、改行文字を取得することができます。
それでは、実際にシステムから改行文字を取得してみましょう。
val ln: String = System.getProperty("line.separator")
この改行文字を文字列に挿入して使用してみましょう。
println(s"Line${ln}Separator")
以下の通り、不具合なく出力されました。
Line Separator
改行文字を見てみよう
さて、改行文字として実際に何が出力されているのかを調べてみましょう。
改行文字をエスケープすることで改行文字を目に見える文字列に変換することができます。
文字列をエスケープするには、Apache Commons Textというテキスト処理ライブラリを使用します。
StringEscapeUtils
クラスのescapeJava
メソッドを使用すると、Javaのエスケープ規則にしたがってエスケープ処理を行ってくれます。
import org.apache.commons.text.StringEscapeUtils val escaped = StringEscapeUtils.escapeJava(ln) println(escaped)
出力は以下の通りになります。Linux環境やMacの環境における改行文字はLFですので、\n
が出力されます。
\n
Windows環境においてはCRLFですので、\r\n
が出力されるはずです。