将 JObject 保存为 Base64 编码文件
save JObject as Base64 Encoded file
我正在使用此代码将 Json 文件读入 JObject myParams
。这个很好用
using (StreamReader file = File.OpenText("config.json"))
using (JsonTextReader reader = new JsonTextReader(file))
{
JObject myParams = (JObject)JToken.ReadFrom(reader);
}
然后我想要的是对信息进行编码并将其保存回另一个文件。
此代码读取文件,对其进行编码并直接保存。有效
using (StreamWriter w = new StreamWriter("filenameEncoded.bson", true))
w.Write(Convert.ToBase64String(File.ReadAllBytes("filename.json")));
但是我不想读取文件并立即对其进行编码。
相反,我想用第一段代码导入 myParams,对 JObject 做一些修改,然后对其进行编码并将其编码保存在文件中。
问题是我无法在 myParams
上使用 Convert.ToBase64String
,因为它需要字节而不是 JObject。
如何编码 JObject myParams 并将其保存到编码文件中?
您可以将以下参数传递给您的 Convert.ToBase64String
方法调用:
Encoding.UTF8.GetBytes(myParams.ToString(Formatting.None))
- 对
JObject
的 ToString
调用是 overwritten to emit Json
Formatting.None
参数将省略缩进
Encoding.XYZ.GetGetBytes
将字符串转换为 byte[]
我正在使用此代码将 Json 文件读入 JObject myParams
。这个很好用
using (StreamReader file = File.OpenText("config.json"))
using (JsonTextReader reader = new JsonTextReader(file))
{
JObject myParams = (JObject)JToken.ReadFrom(reader);
}
然后我想要的是对信息进行编码并将其保存回另一个文件。 此代码读取文件,对其进行编码并直接保存。有效
using (StreamWriter w = new StreamWriter("filenameEncoded.bson", true))
w.Write(Convert.ToBase64String(File.ReadAllBytes("filename.json")));
但是我不想读取文件并立即对其进行编码。
相反,我想用第一段代码导入 myParams,对 JObject 做一些修改,然后对其进行编码并将其编码保存在文件中。
问题是我无法在 myParams
上使用 Convert.ToBase64String
,因为它需要字节而不是 JObject。
如何编码 JObject myParams 并将其保存到编码文件中?
您可以将以下参数传递给您的 Convert.ToBase64String
方法调用:
Encoding.UTF8.GetBytes(myParams.ToString(Formatting.None))
- 对
JObject
的ToString
调用是 overwritten to emit Json Formatting.None
参数将省略缩进Encoding.XYZ.GetGetBytes
将字符串转换为byte[]