读取二进制文件,转换成string类型,再存入数据库
两个功能: 1、下载,把五个数据变成一行数据已二进制形式写入到文件中。保存到本地
2、上传,把刚下载的文件。里面是二进制的数据。要把他们读出来。并且还原成5个数据。在转成
string类型。
下载的代码如下
sfd.Title = "保存";
sfd.Filter = "配置文件(*.config)|*.config";
sfd.RestoreDirectory = true;
if (sfd.ShowDialog() == DialogResult.OK)
{
System.IO.FileStream fs = (System.IO.FileStream)sfd.OpenFile();
List<string> list = OnlyConfig(OnfocusConfigUser, Table);
BinaryWriter bw = new BinaryWriter(fs);
for (int i = 0; i < list.Count; i++)
{
bw.Write(System.Text.Encoding.Unicode.GetBytes(list[i]));
}
bw.Close();
}
怎么一行二进制数据。还原成5条数据啊。求大神。把所有分都上了
二进制
C#
------解决方案--------------------用序列化呗 .
------解决方案--------------------保存
List<string> list = OnlyConfig(OnfocusConfigUser, Table);
BinaryFormatter formatter = new BinaryFormatter();
formatter.Serialize(fs,list);
读取
BinaryFormatter formatter = new BinaryFormatter();
list = formatter.Deserialize(fs) as List<String>;
------解决方案--------------------BinaryFormatter序列化
序列化简单点来理解就是把内存的东西写到硬盘中,当然也可以写到内存中(这个内容我会在后面写一个例子).而反序列化就是从硬盘中把信息读到内存中.就这么简单,呵呵,现在来看下面的例子吧!
在这篇文章中我将使用BinaryFormatter序列化类Book作为例子,希望大家能从例子中深刻体会什么是序列化.
定义类Book:
[Serializable]
public class Book
{
string name;
float price;
string author;