var bytes:ByteArray = new ByteArray();
bytes.writeInt(10); // 4 字節大端序
bytes.writeUTF("123"); // 2 字節長度 + UTF-8 字節
byte[] data = File.ReadAllBytes(@"x:\xxx.bin");
// 讀 Int32 (大端序需轉換)
int x = BinaryPrimitives.ReadInt32BigEndian(data.AsSpan(0, 4));
// 或使用 BitConverter (小端系統需反轉)
// int x = BitConverter.ToInt32(data, 0); // 若 AS3 用 writeInt (大端) 需手動反轉
// 讀 UTF 字符串
int strLen = BinaryPrimitives.ReadUInt16BigEndian(data.AsSpan(4, 2));
string s = Encoding.UTF8.GetString(data, 6, strLen);
BinaryPrimitives.ReadInt32BigEndian (.NET Core 2.1+) 或手動反轉字節。writeUTF 寫入 2 字節無符號長度 + UTF-8 字節,非標準 UTF-8 BOM。MemoryStream + BinaryReader 封裝。byte[] data = File.ReadAllBytes("x:\xxx.bin").ToArray();
int x = BitConverter.ToInt32(data, 0);
string s = Encode.GetEncoding("UTF-8").GetString(x.Skip(4).ToArray());