My.Computer.FileSystem.WriteAllBytesなどを使用して固定長文字列で構成される構造体をファイルに書きたいとします。構造体を.NETのバイト配列に変換する
私はVB.Netに変換した固定長の文字列を持つVB6プロジェクトを使用しています。
Structure Record
<VBFixedString(22),System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValArray,SizeConst:=22)> Public tim() As Char
<VBFixedString(130),System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValArray,SizeConst:=130)> Public des() As Char
<VBFixedString(2),System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValArray,SizeConst:=2)> Public crlf() As Char
End Structure
C#でマーシャリングするのはまだ新しいですが、この構造体をファイルに書き込むためにバイト配列にどのようにして取得しますか?マーシャルトリックがありますか?またはカスタムメソッドを記述する必要がありますか? .NETフレームワークが提供する
補足として、構造体は参照型ではありません。値の型です。 –
タイトルが変更されました。私はそれを知っていましたが、何らかの理由で依然として参照を書きました。 – user142350