C#文件序列化反序列化

来源:百度知道 编辑:UC知道 时间:2024/06/18 01:32:25
C#如何序列化一个文件(比如C:\test.dll)序列化成可传输的流,
然后再把这个流还原为原来的test.dll呢? 有没有具体的例子?
非常感谢各位大侠~
是想用WebService传输文件 所以想把文件序列成 WS可传输的流 只要能传输就可以

看看序列化的文章2进制,和XML的都可以

直接读文件,然后把二进制流转换成Base64编码的字符串,进行传输,这样比较好,我想说一句,二进制,是没有办法反序化的,除非,是你自己定义的每个二进制文件的反序列化的类

常用的都是类的持久化才用到序列化吧,为什么要把文件序列化,本来就是2进制文件二进制流了了,你不是多此一举么??

看看这篇文章 我也没时间写了 以前在CSDN上看到过关于这方面的文章 你可以找找的
http://blog.csdn.net/jianghl_soft/archive/2008/09/16/2934449.aspx

文件有必要序列化吗?

不推荐用ws传输文件,但是如果你一定要用的话,可以用下面的方法。

/// <summary>
/// 文件转化为流
/// </summary>
/// <returns></returns>
private Byte[] FileToByte(string filePath)
{
FileInfo fif = new FileInfo(filePath);
FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read);
byte[] content = new byte[fif.Length];
fs.Read(content, 0, content.Length);
return content;
}

/// <summary>
/// 把流写入文件。
/// <