【问题标题】:C# Save byte array as xml fileC#将字节数组保存为xml文件
【发布时间】:2012-10-24 05:13:49
【问题描述】:

我正在从服务器接收.zip 文件。
.zip 文件以64Base 编码发送,其中包含一个 XML 文件。

使用Convert.FromBase64String将数据解码为二进制后,我可以将字节数组转换为XML吗?

我不想处理解压缩。

我尝试了以下代码:(导致乱码,没有任何意义,看起来根本不像 XML)

XmlDocument doc = new XmlDocument();
string xml = Encoding.UTF8.GetString(buffer);
doc.LoadXml(xml);

有什么想法吗?

【问题讨论】:

    标签: c# xml c#-4.0 bytearray byte


    【解决方案1】:

    你说你不想解压,但你真的是说你不想解压到光盘吗?大多数 zip 库要么允许您将文件直接解压缩到字节数组中,要么允许您将文件解压缩到可以将 MemoryStream 传递给它的流中。

    不必解压缩。除非您可以控制服务器端,否则您可以将格式更改为未压缩文件(如 tar 文件)。这样你就不必解压缩了。

    【讨论】:

      【解决方案2】:

      你说:

      我正在从服务器接收一个 .zip 文件。

      还有:

      我不想处理解压缩。

      嗯。你必须。如果数据在zip 存档中,您需要先将其解压缩。你不能忽视这个事实。

      有很多 zip 库 - sharpziplib 是免费且易于使用的。

      【讨论】:

      • @Sash - 没问题。由于处理的是Streams,所以可以使用MemoryStream直接在内存中管理解压。
      猜你喜欢
      • 2021-05-25
      • 1970-01-01
      • 1970-01-01
      • 2013-10-19
      • 1970-01-01
      • 2013-10-18
      • 2013-10-27
      • 1970-01-01
      • 2020-09-04
      相关资源
      最近更新 更多