0
C#で固定バッファをシリアル化することは可能ですか?私は.netバイナリシリアル化を使用しています。これを克服するためにC#で固定バッファをシリアライズ
[Serializable]
public unsafe struct MyStruct
{
public fixed int MyArray[10];
}
、一つの選択肢は、固定バッファを無視して、プロパティを作成することでした。
[Serializable]
public unsafe struct MyStruct
{
[field: NonSerialized]
public fixed int MyArray[10];
public string MyArrayCsv
{
get { // populate string from array... }
set { // populate array from string... }
}
}
これは、XMLシリアル化に適していますが、バイナリシリアル化の特性を無視します。どのように固定バッファをバイナリシリアル化するための任意のアイデア?
これは本当にシリアライザ、具体的な質問です。しかし、シリアライザが明示的に* 'fixed'バッファを考慮することはまれです。どのシリアライザを使用していますか?シリアライザを自由に選択できますか? –
ISerializableを実装する必要があります。また、直列化されたデータ(プライベートconstを使用する)にも配列のサイズを含めることは危険です。 –