Base64 编码 .Rda 文件 [英] Base64 encoding a .Rda file

查看:41
本文介绍了Base64 编码 .Rda 文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

全部,

我试图弄清楚如何将 .Rda 文件放入 Base64 编码,以便将其传送到 API 和从 API 传送.我真的很挣扎如何做到这一点.这是我所拥有的,但我认为它偏离了目标:

I'm trying to figure out how to put a .Rda file into Base64 encoding for it to be shipped to and from an API. I am really struggling with how to do this. Here's what I've got, but I think it's way off target:

cuse <- read.table("http://data.princeton.edu/wws509/datasets/cuse.dat", header=TRUE)

lrfit <- glm( cbind(using, notUsing) ~ age + education + wantsMore , family = binomial, data=cuse)

filename <- "C:/test.Rda"

save(lrfit, file=filename)

library("base64enc")
tst <- base64encode(filename)
save(tst, file="C:/encode.Rda")

base64decode(file="C:/encode.Rda", output = "C:/decode.Rda")

当我尝试打开 decode.Rda 文件时,它会抛出一个幻数错误.就像我说的那样,我认为我在这里离基地很远,任何帮助将不胜感激.非常感谢.

When I try to open the decode.Rda file, it throws a magic number error. Like I said, I think I'm way off base here, and any help would be appreciated. Thank you so much.

推荐答案

这里有一个正确的步骤序列,应该允许正确的编码/解码

Here a correct sequence of steps that should allow for the correct encoding/decoding

#sample data
dd<-iris
fn <- "test.rda"
fnb4 <- "test.rdab64"

#save rda
save(iris, file=fn)

#write base64 encoded version
library(base64enc)
txt <- base64encode(fn)
ff <- file(fnb4, "wb")
writeBin(txt, ff)
close(ff)

#decode base64 encoded version
base64decode(file=fnb4, output = "decode.rda")
(load("decode.rda"))
# [1] "iris"

问题出在您的第二个 save() 上.那是创建另一个 RDA 文件,其中包含编码的 base64 数据.它没有将 RDA 文件的 base64 编码版本写入光盘.

The problem was your second save(). That was creating another RDA file with the base64 data encoded inside. It was not writing a base64 encoded version of the RDA file to disc.

这篇关于Base64 编码 .Rda 文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆