Visual Studio调试-本机类型
本文关键字:类型 -本 调试 Studio Visual | 更新日期: 2023-09-27 18:29:23
我目前正在开发一个使用WAV文件的应用程序。我希望能够在结构中显示其本机类型的信息,但C#认为char是一个16位的值。
四个字节ChunkID0…3应该包含"R"、"I"、"F"answers"F"
[StructLayout(LayoutKind.Explicit, Size = 12, Pack = 1)]
public unsafe struct RiffDescriptor
{
[FieldOffset(0)]
public byte ChunkID_0;
[FieldOffset(1)]
public byte ChunkID_1;
...
}
我希望调试器将ChunkID显示为"R",而不是122。
有什么想法吗?
public class RiffDescriptor
{
public RiffDescriptor(BinaryReader b)
{
// Read the ChunkID - Should be RIFF
ChunkID = b.ReadBytes(4);
// Read the ChunkSize
ChunkSize = b.ReadUInt32();
// Read the Format - Should be WAVE
Format = b.ReadBytes(4);
}
[DebuggerDisplay("ChunkID = {System.Text.Encoding.Default.GetString(ChunkID)}")]
public byte[] ChunkID;
public UInt32 ChunkSize;
[DebuggerDisplay("Format = {System.Text.Encoding.Default.GetString(Format)}")]
public byte[] Format;
}