金額をフォーマットするには?


ひで  2005-01-18 02:47:43  No: 56040

お世話になります。
環境
OS:XP
VC++.NET 2003
フォームアプリケーション.NET

.NET Frameworkにある関数でS"123456789"を"123,456,789"のようにフォーマットしたいのですが、どのようにしたら実現できますでしょうか。

お願いします。


YuO  2005-01-18 03:10:16  No: 56041

書式指定文字列#,##0を使えばよいのでは?

とりあえず,C#で
Console.WriteLine("{0:#,##0}", 123456789);
とやると
123,456,789
と出力されました。


ひで  2005-01-18 05:25:10  No: 56042

お返事ありがとうございます。

label1->Text = String::Format( "{0:#,##0}", S"123456789" );
のようにしましたが、うまくいきませんでした。

System::Diagnostics::Debug::WriteLine("{0:#,##0}", S"123456789" );
でデバッグ出力してみましたが、フォーマットされていませんでした。

なにか他に方法はないでしょうか。


YuO  2005-01-18 06:13:00  No: 56043

文字列をフォーマットしたいんですね。
Convert::ToInt32でSystem::Int32型に変換してあげてください。


ひで  2005-01-19 18:31:52  No: 56044

System::Diagnostics::Debug::WriteLine("{0:#,##0}", S"123456789" );
のS"123456789"を123456789(int型)に変えてみたのですが、2番目の引数がintから要求の型に変換できませんでした。

おっしゃられていることは文字列をint型に変換するということだと思ったのですが、違うのでしょうか。


YuO  2005-01-19 19:33:11  No: 56045

ヘルプはちゃんと読みましたか?
Debug::WriteLineにStringとInt32をとることができるメソッドは存在しません。
そもそも,Debug::WriteLineは書式化をサポートしていません。

たずねる前に手元のリソースはちゃんと確認しましょう。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加