Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
File io 在文件中存储i32的本机、惯用和安全的方法是什么?_File Io_Rust_Binary - Fatal编程技术网

File io 在文件中存储i32的本机、惯用和安全的方法是什么?

File io 在文件中存储i32的本机、惯用和安全的方法是什么?,file-io,rust,binary,File Io,Rust,Binary,我希望将i32(或任何有符号整数)之类的东西存储到文件中。我知道serde,但我希望了解如何在本地安全地完成这项工作 我提出的唯一解决方案是手动计算二进制并将其转换为U8数组。需要这样做吗?分别调用或将其转换为大尾端或小尾端 pub fn to_be_bytes(self) -> [u8; 4]; pub fn to_le_bytes(self) -> [u8; 4]; 写下来: use std::{fs::File, io::Write}; fn main() { le

我希望将i32(或任何有符号整数)之类的东西存储到文件中。我知道serde,但我希望了解如何在本地安全地完成这项工作

我提出的唯一解决方案是手动计算二进制并将其转换为U8数组。需要这样做吗?

分别调用或将其转换为大尾端或小尾端

pub fn to_be_bytes(self) -> [u8; 4];
pub fn to_le_bytes(self) -> [u8; 4];
写下来:

use std::{fs::File, io::Write};

fn main() {
    let mut f = File::create("/tmp/myfile").expect("unable to open file");
    write!(&mut f, "{}", 42).expect("unable to write file");
}

我会给little endian提建议,因为99%的现代计算机都是little endian。我知道serde,但我想了解它是如何在本地安全完成的——我不确定你认为serde是“非本地”还是“不安全”,但我认为这两种情况都不是。你这是什么意思?