PR

[Flutter][Dart]数値を右詰め、0埋め(ゼロ埋め)、空白埋め、小数点以下の桁数を固定で文字列化するには?

Flutter

はじめに

Flutterでアプリ制作している時に数値を右詰め0埋め(ゼロ埋め)空白埋め小数点以下の桁数を固定等をして文字列化する時があり、忘れないようにするため自分用のメモです。

環境

  • Flutter 2.2.1
  • Dart 2.13.1

小数点以下の桁数を固定

小数点以下をを固定して表示したい場合はtoStringAsFixed()を利用します。

    final num = 123.4;

    print('$num');
    // 123.4
    print('${num.toStringAsFixed(3)}');
    // 123.400

空白埋め

数値を空白埋めで表示したい場合はpadLeft()を利用します。

第2引数指定しないか、空白の文字列をいれます。デフォルトが空白の文字列です。

    int num1 = 123;

    print('$num1');
    // 123
    print('${num1.toString().padLeft(5, ' ')}');
    //   123


    double num2 = 123.4;

    print('$num2');
    // 123.4
    print('${num2.toStringAsFixed(3).padLeft(10, ' ')}');
    //    123.400

0埋め(ゼロ埋め)

数値を空白埋めで表示したい場合はpadLeft()を利用します。

第2引数0の文字列をいれます。

    int num1 = 123;

    print('$num1');
    // 123
    print('${num1.toString().padLeft(5, '0')}');
    // 00123

    double num2 = 123.4;
    print('$num2');
    // 123.4
    print('${num2.toStringAsFixed(3).padLeft(10, '0')}');
    // 000123.400

右詰め

数値を右詰めで文字列化する場合はpadRight()を利用します。

    int num1 = 123;
    print('$num1');
    // 123
    print('${num1.toString().padLeft(5, ' ')}');
    //   123
    print('${num1.toString().padRight(5, ' ')}');
    // 123


    double num2 = 123.4;

    print('$num2');
    // 123.4
    print('${num2.toStringAsFixed(3).padLeft(10, ' ')}');
    //    123.400
    print('${num2.toStringAsFixed(3).padRight(10, ' ')}');
    // 123.400

さいごに

時々使うものって「あれ?どうやるんだっけ?」ってなりますよね?

おすすめ参考書

コメント

タイトルとURLをコピーしました