- PR -

書式指定子で固定長右寄せに整形したい(C#)

1
投稿者投稿内容
ひろし
会議室デビュー日: 2003/03/18
投稿数: 13
投稿日時: 2003-07-02 18:44
// FORTRANでやっているみたいに
// 書式指定子で整数を固定長右寄せに整形できないか?

int i = 5;
int j = 20;
Console.WriteLine("i={0:000}",i);
Console.WriteLine("i={0:000}",j);
// 結果(左側に0が入る形での整形はできる)
// i=005
// j=020

// 左側に0でなくて空白が入ったかたちで整形する方法が分からない
// 例 下記の通り
// i= 5
// j= 20

// 初歩的な質問ばかりですみません
なな
ぬし
会議室デビュー日: 2003/06/22
投稿数: 659
お住まい・勤務地: 愛知県
投稿日時: 2003-07-02 19:05
カスタム数値書式指定文字列では、できないようです。

# 長さを調べて、左側に空白を追加するしか無いのかな?
なな
ぬし
会議室デビュー日: 2003/06/22
投稿数: 659
お住まい・勤務地: 愛知県
投稿日時: 2003-07-02 19:09
# 自己レスです

String.Formatと、String.PadLeftの組合せですかね。
FOX
ベテラン
会議室デビュー日: 2002/04/08
投稿数: 63
お住まい・勤務地: いなか
投稿日時: 2003-07-02 19:12
たとえば以下のようなやり方はいかがでしょうか?

コード:

  Console.WriteLine("{0,4:G}",1);


なな
ぬし
会議室デビュー日: 2003/06/22
投稿数: 659
お住まい・勤務地: 愛知県
投稿日時: 2003-07-02 19:42
おお!
すばらしいっ!

参考までに...
この書式の指定について、ヘルプのどのあたりに書かれているのでしょうか?
ひろし
会議室デビュー日: 2003/03/18
投稿数: 13
投稿日時: 2003-07-02 20:07
うまくいきました。ありがとうございます。
わたしも、一応まじめに最新のMSDNを検索しているのですが、
このような情報がどのキーワードででてくるのか分からないです。
FOX
ベテラン
会議室デビュー日: 2002/04/08
投稿数: 63
お住まい・勤務地: いなか
投稿日時: 2003-07-02 20:18
こんにちは

引用:

参考までに...
この書式の指定について、ヘルプのどのあたりに書かれているのでしょうか?



.NET FrameworkSDK のドキュメントの「複合書式設定」の項を参考にしました。
#「複合書式設定」で検索してください。

なな
ぬし
会議室デビュー日: 2003/06/22
投稿数: 659
お住まい・勤務地: 愛知県
投稿日時: 2003-07-04 19:11
連絡が遅くなりました。

4〜5回、読み返して...
さらに、サンプルコードを書いてテストして...
ようやく理解できました。

このマニュアルはひどすぎますね。

ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)