こんにちは、私はint型に変換するために拡張メソッドを作成している - > uintvarは、これを行うには作り付けのサポートをtheresの...
public static class BinaryExtension
{
public static IEnumerable<int> ToUIntVar(this int value)
{
string binary = Convert.ToString(value, 2);
for (int i = binary.Length; i > 0; i -= 7)
{
if (i >= 7)
{
if (i == binary.Length)
yield return Convert.ToInt32(binary.Substring(i - 7, 7).PadLeft(8, '0'), 2);
else
yield return Convert.ToInt32("1" + binary.Substring(i - 7, 7), 2);
}
else if (binary.Length < 7)
yield return Convert.ToInt32(binary.Substring(0, i).PadLeft(8, '0'), 2);
else
yield return Convert.ToInt32("1" + binary.Substring(0, i).PadLeft(7, '0'), 2);
}
}
}
を使用する方法
...あなたがC#2.0でこのコードを使用したい場合、私はあなたが手順を知っていると仮定し、私はコードが醜い知っているが、それはC#3.0で動作します
ありがとうPrashant。 Unfortunatelly私はまだ.Net 2.0で作業していますが、私はあなたのコードを改造することができます。例えば私はそれを拡張ではなく静的ユーティリティメソッドにすることができます。再度、感謝します。 –
ええ、あなたはそれを静的な方法にすることができますまた、いくつかの醜いコードをきれいにすることができます –