我在按鈕內部有一個簡單的方法。背後的邏輯很簡單,但我無法理解爲什麼我在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