如何在不分配的情况下跳过具有读取的N个字节?

纯粹的

我想在Read不做任何分配情况下跳过实例时跳过任意数量的字节跳过后,我需要继续读取下面的数据。

编译时不知道字节数,因此无法创建固定数组。Read也没有跳过,所以我需要阅读一些内容。我不想使用BufReader和分配不必要的缓冲区,也不想逐字节读取,因为这样效率低下。

还有其他选择吗?

Shepmaster

最好的选择是还要求Seek

use std::io::{self, Read, Seek, SeekFrom};

fn example(mut r: impl Read + Seek) -> io::Result<String> {
    r.seek(SeekFrom::Current(5))?;

    let mut s = String::new();
    r.take(5).read_to_string(&mut s)?;

    Ok(s)
}

#[test]
fn it_works() -> io::Result<()> {
    use std::io::Cursor;

    let s = example(Cursor::new("abcdefghijklmnop"))?;
    assert_eq!("fghij", s);
    Ok(())
}

如果您不能使用Seek,那么请参见未实现Seek时如何从std :: io :: Read特质浏览数据?

也可以看看:

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在不分配内存的情况下将opencv映射到具有对齐支持的特征值?

来自分类Dev

如何在不分配ID的情况下引用元素?

来自分类Dev

如何在不分配Java堆字节数组的情况下解析直接内存中的Google协议缓冲区?

来自分类Dev

如何在不分配更多存储空间的情况下从数组初始化向量?

来自分类Dev

如何在不分配变量的情况下使用异步等待?避免从未使用过的价值

来自分类Dev

如何在没有old_io的情况下从字节读取/写入整数值?

来自分类Dev

如何在不分叉的情况下运行Shell命令

来自分类Dev

如何在不分组的情况下使用圆括号?

来自分类Dev

如何在不分区的情况下从bigquery获取所有表ID?

来自分类Dev

如何仅在所有可用的情况下组装多个字节数组

来自分类Dev

如何在两个字段具有相同值的情况下返回文档

来自分类Dev

如何在不转换为int的情况下获得字节字符串中的单个字节

来自分类Dev

在不分配功能的情况下反应Typescript FunctionalComponent

来自分类Dev

不分配新箭头的情况下更新ArrowHelper的困难

来自分类Dev

如何在不分配的情况下调用表达式语句

来自分类Dev

如何在没有分配的情况下将循环缓冲区变成O(n)中的向量?

来自分类Dev

如何在没有分配的情况下将循环缓冲区转换为O(n)中的向量?

来自分类Dev

如何在没有ImageIO.read()的情况下将加载的字节转换为图像

来自分类Dev

C#控制台-如何在没有换行的情况下读取Line()?(或撤消\ n或垂直\ b)

来自分类Dev

如何在没有 .readlines() 的情况下读取 .txt 文件/用 \n 替换 UTF-8 换行符?

来自分类Dev

如何在不分支的情况下强制将NAN *零强制赋予零?

来自分类Dev

如何在不分割单词的情况下将字符数限制设置为100?

来自分类Dev

如何在不分析jacobian的情况下从FMU或Dymola访问模型jacobian

来自分类Dev

如何在不分割单词的情况下将字符数限制设置为100?

来自分类Dev

如何在没有科学计数法的情况下显示整个字段值?

来自分类Dev

Pig:如何将所有元组发送到UDF而不进行分组处理?或者如何在不分组的情况下将元组转换为Bag?

来自分类Dev

如何在没有输出参数“ varargout”且未分配“错误”的情况下终止函数?

来自分类Dev

如何在没有分配和组成的情况下更改lambda表达式的功能?

来自分类Dev

如何在不使用分配的情况下访问类中的私有变量?

Related 相关文章

  1. 1

    如何在不分配内存的情况下将opencv映射到具有对齐支持的特征值?

  2. 2

    如何在不分配ID的情况下引用元素?

  3. 3

    如何在不分配Java堆字节数组的情况下解析直接内存中的Google协议缓冲区?

  4. 4

    如何在不分配更多存储空间的情况下从数组初始化向量?

  5. 5

    如何在不分配变量的情况下使用异步等待?避免从未使用过的价值

  6. 6

    如何在没有old_io的情况下从字节读取/写入整数值?

  7. 7

    如何在不分叉的情况下运行Shell命令

  8. 8

    如何在不分组的情况下使用圆括号?

  9. 9

    如何在不分区的情况下从bigquery获取所有表ID?

  10. 10

    如何仅在所有可用的情况下组装多个字节数组

  11. 11

    如何在两个字段具有相同值的情况下返回文档

  12. 12

    如何在不转换为int的情况下获得字节字符串中的单个字节

  13. 13

    在不分配功能的情况下反应Typescript FunctionalComponent

  14. 14

    不分配新箭头的情况下更新ArrowHelper的困难

  15. 15

    如何在不分配的情况下调用表达式语句

  16. 16

    如何在没有分配的情况下将循环缓冲区变成O(n)中的向量?

  17. 17

    如何在没有分配的情况下将循环缓冲区转换为O(n)中的向量?

  18. 18

    如何在没有ImageIO.read()的情况下将加载的字节转换为图像

  19. 19

    C#控制台-如何在没有换行的情况下读取Line()?(或撤消\ n或垂直\ b)

  20. 20

    如何在没有 .readlines() 的情况下读取 .txt 文件/用 \n 替换 UTF-8 换行符?

  21. 21

    如何在不分支的情况下强制将NAN *零强制赋予零?

  22. 22

    如何在不分割单词的情况下将字符数限制设置为100?

  23. 23

    如何在不分析jacobian的情况下从FMU或Dymola访问模型jacobian

  24. 24

    如何在不分割单词的情况下将字符数限制设置为100?

  25. 25

    如何在没有科学计数法的情况下显示整个字段值?

  26. 26

    Pig:如何将所有元组发送到UDF而不进行分组处理?或者如何在不分组的情况下将元组转换为Bag?

  27. 27

    如何在没有输出参数“ varargout”且未分配“错误”的情况下终止函数?

  28. 28

    如何在没有分配和组成的情况下更改lambda表达式的功能?

  29. 29

    如何在不使用分配的情况下访问类中的私有变量?

热门标签

归档