gpt4 book ai didi

r - 将原始存储为字符写入文件

转载 作者:行者123 更新时间:2023-12-04 02:13:55 25 4
gpt4 key购买 nike

我把自己难倒在一些我认为应该相对简单的事情上。

我有一个表示二进制字符串的字符串。例如:

x <- as.character(charToRaw("Hello World"))

我想将 x写入文件,但是一直无法反转创建 x的过程来获取原始内容。我原以为会这么简单
writeBin(as.raw(x), 
con = "filename.txt")

但这不会产生带有文本“Hello World”的文件。也没有
writeBin(x,
con = "filename.txt")

当我尝试直接逆时,出现错误
> x <- as.character(charToRaw("Hello World"))
> x
[1] "48" "65" "6c" "6c" "6f" "20" "57" "6f" "72" "6c" "64"

> rawToChar(as.raw(x))
Error in rawToChar(as.raw(x)) :
embedded nul in string: '0A\0\0\0\0249\0H\0@'
In addition: Warning messages:
1: In rawToChar(as.raw(x)) : NAs introduced by coercion
2: In rawToChar(as.raw(x)) :
out-of-range values treated as 0 in coercion to raw

语境

我知道这是一种解决问题的奇怪方法。我受到一些奇怪的限制,我将填充订单的数据作为 JSON 字符串保存到 SQL 数据库。用户可以在请求中包含附件,因此我将原始向量转换为字符串以存储在 JSON 字符串中。我在将字符串重组为原始向量时遇到问题,该向量可以制成原始文件的副本。

最佳答案

这将为您提供相反的操作:

x <- as.character(charToRaw("Hello World"))
rawToChar(as.raw(as.hexmode(x)))
## [1] "Hello World"

关于r - 将原始存储为字符写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35704211/

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