私は、特にフォーマットされた文字列に変換したい.NET/C#のintを持っています。.NETの文字列形式:整数を固定幅の文字列に変換しますか?
値が1の場合は、文字列を "001"にします。
10 = "010"。
116 = "116"
等...
私は、フォーマット文字列で、周りを見ていないが、これまでのところ成功しています。私も999以上の値を持っていません。
私は、特にフォーマットされた文字列に変換したい.NET/C#のintを持っています。.NETの文字列形式:整数を固定幅の文字列に変換しますか?
値が1の場合は、文字列を "001"にします。
10 = "010"。
116 = "116"
等...
私は、フォーマット文字列で、周りを見ていないが、これまでのところ成功しています。私も999以上の値を持っていません。
私は、whileループを使用している。このような基準に一致する文字列の先頭に物事を追加する必要があったたびに。同様に:
while (myString.length < 5) myString = "0" + myString;
これを行うにはstring.formatの方法があるかもしれませんが、これはこれまで私にとってはうまくいきました。
組み込み関数を使用する方が、はるかに明確です。 – svick
これを実行する最も簡単な方法は、.NETが内蔵されています。このための機能は使用しません:
var r = 10;
var p = r.ToString("000");
ループやパディングの必要はありません。
はこのアプローチを知りませんでした。プラス1つ: – ingo
負の数値の場合、これは4文字になります。たとえば-10は「-010」 – VoteCoffee
別のオプションは、次のようになります。
i.ToString("d3")
完璧!ありがとうございました! – pearcewg
メモリの意味は何ですか?他のメソッドを使用するよりもメモリ負荷が高くなりますか? –
あまりにも悪いことではありませんが、以下のvcsjones解決策は、私の意見では良いです。そのために作成された文字列のインスタンスを少なくとも1つ少なくします。 – ingo