如何将docx二进制数据保存到web文件api C#
How to save the docx binary data to file in web api C#
我正在从一个 API 获取一个 docx 文件的字节 [] 到另一个 API 并像 Application.Documents.Open(array) 一样处理它;或 File.WriteAllBytes(路径, 数组);
我认为收到的数据是某种 UTF-8 格式,但我不知道如何转换和处理它们
正在使用以下代码从 API 中获取文件。
var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
var result = streamReader.ReadToEnd();
return result;
}
输出(byte[])像这样作为字符串接收。
string result = "PK[][]?......";
请检查postman screenshot
并尝试使用以下代码保存到文件夹但不起作用
byte[] res = result .ToArray();
File.WriteAllBytes(@"C:\temp\myfile.docx", res);
也试过了,但没用,
byte[] mybytearray = Convert.FromBase64String(t);
byte[] barr = Encoding.ASCII.GetBytes(hardcode);
也许您应该使用 BinaryReader 而不是 StreamReader。
另见:
我正在从一个 API 获取一个 docx 文件的字节 [] 到另一个 API 并像 Application.Documents.Open(array) 一样处理它;或 File.WriteAllBytes(路径, 数组);
我认为收到的数据是某种 UTF-8 格式,但我不知道如何转换和处理它们
正在使用以下代码从 API 中获取文件。
var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
var result = streamReader.ReadToEnd();
return result;
}
输出(byte[])像这样作为字符串接收。
string result = "PK[][]?......";
请检查postman screenshot
并尝试使用以下代码保存到文件夹但不起作用
byte[] res = result .ToArray();
File.WriteAllBytes(@"C:\temp\myfile.docx", res);
也试过了,但没用,
byte[] mybytearray = Convert.FromBase64String(t);
byte[] barr = Encoding.ASCII.GetBytes(hardcode);
也许您应该使用 BinaryReader 而不是 StreamReader。 另见: