我正在尝试用C#创建一个对象,用于我的一个项目。我需要创建一个接受String(bin文件位置的路径)的对象,并在创建该对象的示例时创建一个字节数组。
我不想声明数组的大小,因为这可能会导致问题,因为我每次都会加载不同的bin文件
简而言之,我需要有一个对象,它在示例化时接受bin文件路径的String作为输入,并在对象内创建一个字节数组。
到目前为止,我已经尝试声明字节数组,没有默认大小,然后尝试在创建对象时实现它,但我得到一个错误
// Class File for the Object
namespace binMapper;
public class binFile {
public byte[] binData {get;set;} = new byte[];
public binFile(String pathToBinFile)
{
the Object
this.binData = File.ReadAllBytes(pathToBinFile);
}
}
错误如下所示
数组创建必须具有数组大小或数组初始值设定项[ObjCSharp]csharp(CS1586)
2条答案
按热度按时间kognpnkq1#
File.ReadAllBytes
创建一个全新的数组。因为在构造函数中读取bin文件,所以不需要使用默认值初始化属性。解决方案看起来像这样(也实现了一些标准的命名方案):s8vozzvw2#
您可能希望将 empty 数组设置为
binData
属性的默认值。从技术上讲,您可以使用new byte[0]
来实现这一点,但更好的方法不是创建不需要的示例,而是使用Array.Empty
: