定义一个类,
using System;
using System.Collections;
namespace Tstring
{
///
/// SubjectInfo 的摘要说明。
/// [Serializable]
public class SubjectInfo
{
public SubjectInfo(){}
#region Fields
private string _FileUrl;
private string _FileTitle;
#endregion
#region Properties
public string FileUrl{
get{return _FileUrl;}
set{_FileUrl = value;}
}
public string FileTile{
get{return _FileTitle;}
set{_FileTitle = value;}
}
#endregion
}
[Serializable]
public class SubjectCollect : CollectionBase{
public void Add(SubjectInfo item){
List.Add(item);
}
public void Remove(SubjectInfo item){
List.Remove(item);
}
public SubjectInfo this[int i]{
get{return (SubjectInfo)List[i];}
set{List[i] = value;}
}
}
}
while (reader.Read()) {
j++;
SubjectInfo info = new SubjectInfo();
string file = path + reader["FileURL"].ToString().Replace("/",@"\");
this.label1.Text = string.Format("> {0}",file);
if(!System.IO.File.Exists(file)){
i++;
info.FileTile = reader["Title"].ToString();
info.FileUrl = reader["FileURL"].ToString();
collect.Add(info);
}
}
Tstring.CommUtil.Serialize(collect);
#region 序列化和反序列化
///
/// 序列化
/// ///
public static void Serialize(SubjectCollect collect) {
string path = "Data.db";
if (File.Exists(path))
File.Delete(path);
FileStream fs = new FileStream(path, FileMode.Create);
BinaryFormatter formatter = new BinaryFormatter();
try {
formatter.Serialize(fs, collect);
}
catch (SerializationException exp) {
throw exp;
}
finally {
fs.Close();
}
}
///
/// 反序列化
/// ///
public static SubjectCollect Deserialize() {
SubjectCollect collect;
string path = "Data.db";
if (!File.Exists(path))
return null;
FileStream fs = new FileStream(path, FileMode.Open);
BinaryFormatter formatter = new BinaryFormatter();
try {
collect = (SubjectCollect)formatter.Deserialize(fs);
}
catch (SerializationException exp) {
throw exp;
}
finally {
fs.Close();
}
return collect;
}
#endregion