Я пытаюсь записать некоторые игровые данные в файл, а затем прочитать их обратно. Данные хранятся в векторе структур. Запись данных в файл работает нормально, используя serialize и bincode, но чтение не удается.
// Try to save the data. (Works)
let mut f = BufWriter::new(File::create("sector.dat").unwrap());
serialize_into(&mut f, §or_vector).unwrap();
// Try to read the data (Fails with "failed to fill whole buffer" error)
let mut read_sector_vector: Vec<Sector::Sector> =
deserialize_from(BufReader::new(File::open("sector.dat").unwrap())).unwrap();
read_sector_vector[0].displaysector();
Я не могу понять это, и я не знаю достаточно о ржавчине, чтобы понять, что я делаю неправильно. Кажется, это проблема (из того, что я прочитал) о том, что BufReader не знает длину данных? Но я не знаю длину вектора (или, по крайней мере, не узнаю, когда по-настоящему читаю данные в другом исполняемом файле)