我目前正在编写一个 Flac-Decoder,因此我必须读取在 flac-header 中编码的 2 个 UTF8 值。这是在文档中:
if(variable blocksize)
<8-56>:"UTF-8" coded sample number (decoded number is 36 bits)
else
<8-48>:"UTF-8" coded frame number (decoded number is 31 bits)
他们在他们的 bitreader 文件Bitreader(第 1327 行)中使用自制函数来获取更大的 UTF8(可变块大小)。
我看了看它,翻译成 c# 的代码不是很好。所以我考虑使用带有 UTF8 编码的 binaryreader 并使用这种方法读取:ReadUint64。这有可能吗?结果是否相同,绝对最快的解决方案是什么?