各行が「パイプ」文字で囲まれているようなものを作成したいと思います。
| First Line |
| 100 200 |
| 1000 2000 |
- 最初の行では、右側のパディングは 1 スペースです。
- 2 行目では、右側のパディングは 4 つのスペースです。
- 3 行目は 2 つのスペースです。
私は printf + フォーマッティング (およびパディング数を明示的に計算しない) を介してそれを実行しようとしていますが、フォーマッティング構文に問題があります。これが私の現在のコードです:
System.out.printf("| FIRST LINE" + "%50s\n", "|");
System.out.printf("| 100 200" + "%50s", "|");
System.out.printf("| 1000 2000" + "%50s", "|");
行あたりの最大文字数は 50 文字で、行の最初の文字が「パイプ」であり、行の最後の文字が別の「パイプ」であることを示しようとしています)。
問題は、左側の部分で既に使用されている文字 (つまり、「| FIRST LINE」) を考慮せずに 50 個のスペースが配置されていることです。上記のコードは次のようになります。
System.out.format("%s %50s\n", "| FIRST LINE", "|");
では、両方の文字列の幅が考慮されるように出力形式を定義するにはどうすればよいでしょうか?
前もって感謝します。