2016-08-18 16 views
0

現在、私はバイナリファイルを編集する小さなプロジェクトに取り組んでいます。私はIConvertibleインターフェイスを使いたいので、すべてのタイプに対してゲッターとセッターを作成することはできません。
現在、IConvertibleオブジェクトをbytearrayに変換する必要があるSetterに取り組んでいます。C#:Bytearray from IConvertible

セッターは現在、次のようになります。
public void SetValue(UInt32 Offset, IConvertible Value) { }

誰もがBitConverterがそうするのネイティブな方法を提供しないため、IConvertible ObjectからのByteArrayを取得するために方法を知っています。

答えて

2

IConvertibleは、IConvertibleToString,など)の主な方法に反映されているため、このシナリオでは使用しません。そこは、補助ToTypeでし作品ですが、ほとんどの種類のは(conversionType用)byte[]ToTypeをサポートしていません。

var blob = Convert.ChangeType(obj, typeof(byte[])); 

しかし、これはあなたが何をすべきない何かであり、それは意図した使用法ではありません。それがなかった場合、これは動作します。率直に言って、あなたのシリアライゼーションの詳細は通常、と別々に存在する必要があります。オブジェクト。

+0

ご連絡ありがとうございます。別の方法を使用するようにコードを編集します。これを私に指摘してくれてありがとう。 :) – imthe666st