Fixed length records: Difference between revisions

Content added Content deleted
(Added Rust solution)
m (Rust - reformatted with rustfmt)
Line 1,185: Line 1,185:


=={{header|Rust}}==
=={{header|Rust}}==
<lang rust>use std::io::prelude::*;
<lang rust>use std::fs::File;
use std::io::prelude::*;
use std::io::{BufReader, BufWriter};
use std::io::{BufReader, BufWriter};
use std::fs::File;


fn reverse_file(input_filename: &str, output_filename: &str,
fn reverse_file(
input_filename: &str,
record_len: usize) -> std::io::Result<()> {
output_filename: &str,
record_len: usize,
) -> std::io::Result<()> {
let mut input = BufReader::new(File::open(input_filename)?);
let mut input = BufReader::new(File::open(input_filename)?);
let mut output = BufWriter::new(File::create(output_filename)?);
let mut output = BufWriter::new(File::create(output_filename)?);
Line 1,205: Line 1,208:
match reverse_file("infile.dat", "outfile.dat", 80) {
match reverse_file("infile.dat", "outfile.dat", 80) {
Ok(()) => {}
Ok(()) => {}
Err(error) => eprintln!("I/O error: {}", error)
Err(error) => eprintln!("I/O error: {}", error),
}
}
}</lang>
}</lang>