我在按钮内部有一个简单的方法。背后的逻辑很简单,但我无法理解为什么我在String集上收到这个错误。'System.FormatException'类型的未处理的异常
以下是错误
型“System.FormatException”未处理的异常出现在mscorlib.dll
附加信息:在什么应该是一个7位编码的Int32字节太多。
下面是代码
private void button1_Click(object sender, EventArgs e)
{
FileStream data= new FileStream("data.DAT", FileMode.OpenOrCreate);
BinaryReader a = new BinaryReader(data);
while (data.Position < data.Length)
{
string name = a.ReadString();
string egn = a.ReadString();
string lenght = a.ReadString();
int hour = a.ReadInt32();
double price = a.ReadDouble();
int days = a.ReadInt32();
double result = price* hour* days;
dataGridView1.Rows.Add(name, egn, lenght, hour, price, days, result);
}
data.Close();
}
究竟哪一行?你可以发布data.dat的十六进制转储吗? – Chet
可能数据并不完全包含您的想法。该文件如何写入?你能告诉我们用来写它的代码吗? –
我无法显示用于编写.dat文件的代码。但肯定它不是由BrinaryWriter生产的,可能会导致这个问题?附:错误行是while循环中的第一个。 – dtmnn