Android上で使われている改行コードは何か~Androidアプリの作り方~
editText なんかにテキストを表示する時に、改行を入れるにはどうしたら良いかわからなくて困りました。
調べてみると、最初に以下のようにして、改行コードを取得しておいて、あとはこの「BR」を入れてやれば改行が入ることになります。
static final String BR = System.getProperty("line.separator");
この方法では、実行する環境での改行コードを取得することができるので、環境に依存せずに動作することになります。
例えば、以下のように使用します。
text = "Version:" + versionName + BR;
edit = (EditText) findViewById(R.id.edit);
edit.setText(text);
ただ、他のOSとファイルでデータの受け渡しをする時などは、改行コードの実体がわからないままでは不便だと思いますので、以下のようにして改行の文字コードを調べてみました。
int code_br1 = (int)BR.toCharArray()[0];//BRを文字配列に変換してその最初の文字を取る
test = String.valueOf(Integer.toHexString(code_br1)) + BR;//16進数にして文字列に変換
edit.setText(test);//EditTextに表示
これを実行してみた結果、表示された値は「a」でした。
16進数で表示させているわけなので、文字コードは「0x0a」ということでしょう。
つまり、Androidで使われている文字コードはLinuxと同じくLFというわけですね。
ちなみにBRの2文字目を取ろうとするとエラーになってしまうので、文字コードは1バイトということだと思います。
Windowsで作成したファイルを読み込む時などには注意が必要かもしれません。
うつ日記 ~うつを克服するための日記~
https:/