我有一个名为animal的类,它有public string name、species和public Byte photoAnimal。
在另一个表单中,我创建了一个名为Simba的动物,我想设置Simba的值,但是当我想设置photoAnimal时,我得到了错误。我使用filestream和binaryreader读取数据,然后从filestream和二进制读取器读取create byte[] imageData = binary数据。我不能设置Simba.photoAnimal = imageData,下面是我的一些代码:
animal Simba = new animal();
string fileName = textBox5.Text;
byte[] ImageData;
fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);
br = new BinaryReader(fs);
ImageData = br.ReadBytes((int)fs.Length);
br.Close();
fs.Close();
Simba.name = textBox1.Text;
Simba.species = textBox2.Text;
Simba.photoAnimal = ImageData; // error 发布于 2013-12-18 23:36:52
ImageData是一个byte[]。因此,在动物类中,替换
public Byte photoAnimal 通过
public Byte[] photoAnimal.发布于 2013-12-18 23:38:58
该错误消息意味着它无法将您的ImageData (类型为byte[])赋给似乎属于byte类型的photoAnimal
在您的类animal中,将photoAnimal的类型更改为数组:
public class animal
{
public byte[] photoAnimal;
}顺便说一句,您颠倒了命名约定。变量应该在camelCase中,类应该在UpperCamelCase中。在C#中,通常使用Animal simba = new Animal()而不是animal Simba = new animal(),
https://stackoverflow.com/questions/20662234
复制相似问题