.NET中是否存在文件字节的包装器?
我不喜欢使用byte []。在文件字节的情况下,类型(byte [])没有给出足够的语义含义,因为并非所有byte []都是文件字节。将其作为论据传递令人不舒服......
我知道写这种自己的包装会很容易。 e.g:
public class FileBytes
{
public FileBytes
(
byte[] value
)
{
Contract.Requires(value != null);
Contract.Requires(value.Length != 0);
this.Value = value;
}
public byte[] Value { get; private set; }
}
但我想知道是否有一些.NET-box解决方案。
答案 0 :(得分:8)
BCL中没有这样的东西。 (或者Stream
抽象可能正是你要找的?)
您的包装器与原始byte[]
具有相同的问题,因为FileBytes
类型的变量可以是null
。
另外,我不明白为什么来自文件的字节与来自其他地方(例如来自网络)的字节有任何不同。对字节操作的代码应该以相同的方式运行,无论它们来自何处。