読者です 読者をやめる 読者になる 読者になる

数値や文字列を右詰して前を「0(ゼロ)」で埋める(C#)

c#

C#の小ネタです。まぁいつも小ネタですが。 数値や文字列を右詰(右寄せ?)して前を「0(ゼロ)」で埋めた文字列を作ります。 数値の右詰と0埋め 数値の場合はstring.FormatメソッドかToStringメソッドで標準の10進数"D"数値書式指定を使います。"0"カスタ…

FlagsAttributeを指定したenumの文字列

c#

ものすごく小ネタですが、FlagsAttributeを指定したenumの文字列表現はどうなるんだろ?とふと気になって試してみました。 // トッピング [Flags] public enum Toppings { None = 0x00, // なし Nitamago = 0x01, // 煮卵 CharSiu = 0x02, // チャーシュー M…

LINQ - 空のシーケンスでMin/Max/Averageを使ったときのメモ

LINQで空のシーケンスに対してMin/Max/Averageを使うとInvalidOperationExceptionが発生する場合があります。言われるとそっかと思うんですが、SQLの感覚もあってかうっかりやっちゃうかなあと思ったのでちょっとメモしておきます。 たとえば、intの空のシー…

LINQでn個ずつグルーピング

前に少し考えたときは思いつかなかったのですが、今日ふと思い立って書いてみました。 コレクションの要素を5個ずつでグルーピングするサンプルです。 static void Main(string[] args) { var letters = "abcdefghijklmnopqrstuvwxyz".ToCharArray(); Consol…

LINQでクロス結合

クロス結合(CROSS JOIN)はLINQを使ってどうやって書くんだろうと気になったので調べてみました。 SQLでもほとんど使わないのでC#でもほとんど使わないとは思いますが・・・。重複ありのすべての組合わせを出したいときに使えるかなーと思います。まぁほと…