我正在创建一个Web应用程序,我将文件从(docx,xlxs,images,pdf)转换为byte,
angularjs帮助我转换文件但我不知道文件转换的格式
这是输出
数据:应用程序/ vnd.openxmlformats-officedocument.wordprocessingml.document;的base64,UEsDBBQABgAIAAAAIQDfpNJsWgEAACAFAAATAAgCW0NvbnRlbnRfVHlwZXNdLnhtbCCiBAIooA
openxmlformats-
此行表示数据是xml格式,但我想将此格式的数据转换为来自webservice的字节数组
我该怎么做呢?
答案 0 :(得分:0)
要将数据转换为字节数组,您不需要知道文件类型只需将其转换为字节数组。
转换为字节数组意味着我想查看任何文件的源数据,因此这只是转换它的文件类型并不重要。
后缀仅帮助应用程序轻松确定文件类型,但未更改二进制数据或影响文件数据
byte[] ObjectToByteArray(object obj)
{
if(obj == null)
return null;
BinaryFormatter bf = new BinaryFormatter();
using (MemoryStream ms = new MemoryStream())
{
bf.Serialize(ms, obj);
return ms.ToArray();
}
}
请注意,obj
以及obj
中的所有属性/字段(以及所有属性/字段的所有内容)都需要使用Serializable
attribute进行标记才能成功用这个序列化。
byte[] bytes = System.IO.File.ReadAllBytes(filename);