gpt4 book ai didi

rust - 将 Vec 转换为 &[u16]

转载 作者:行者123 更新时间:2023-11-29 08:08:47 25 4
gpt4 key购买 nike

<分区>

我有一个 Vec<u8>从文件中读取的字节数 - 字节是一种文本格式(可能是 UTF-16 或其他一些愚蠢的 2 字节格式),我想将其转换为 UTF-8。

let title = Vec::from_iter(bytes.take(title_length));
// Some Vec<u8> to &[u16] magic
let title = String::from_utf16_lossy(title);

目前我正在使用这个相当脏的代码:

let title: &[u16] = unsafe { std::slice::from_raw_parts(title_data.as_ptr(), title_data.len()) };

虽然这应该有效,但我收到错误可能是由于 take()调用:

error: mismatched types:
expected `*const u16`,
found `*const core::result::Result<u8, std::io::error::Error>`
(expected u16,
found enum `core::result::Result`) [E0308]

我应该 map take迭代器什么的?

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com