字节数组子串

Byte Array Substring

我正在尝试 return 字节数组的子字符串。

(另一个应用程序正在将数据推送到我的数据库中,其中文件附加了一个前置 GUID。我想在将文件返回给用户时删除此 GUID)

if (bytes.Length > 38)
            {
                string s = System.Text.Encoding.ASCII.GetString(bytes);
                returnBytes = Convert.FromBase64String(s.Substring(38));
            }

是否可以在没有文本编码的情况下执行此操作?也许通过 Array.Copy() ?

感谢任何建议。

对于返回数组子串的部分,可以使用ArraySegment<T>。 参考这个link

您可以使用Buffer.BlockCopy

    Byte[] fileBytes = new Byte[bytes.Length - 16];
    Buffer.BlockCopy(bytes, 16, fileBytes, 0, fileBytes.Length); 

BTW Guid 通常是 16 字节长度,38 是字符串长度