The following code:
use std::fs::File;
use std::io::Write;
fn main() {
let encoded: Vec<u8> = vec![0; 2500000000];
let mut buffer = File::create("file.bin").unwrap();
let written_bytes = buffer.write(&encoded).unwrap();
assert_eq!(written_bytes, encoded.len());
}
errors with:
thread 'main' panicked at 'assertion failed: `(left == right)`
left: `2147479552`,
right: `2500000000`', src/main.rs:8:5
So there seems to be a limit of 2^31 - 4096 bytes.
How can I get around this? I'd like to write a larger file. :)