using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary; namespace WpfApplication1
{
public static class FileDateDo
{ public static T getFileDate<T>(string filePath) where T : new()
{
if (!File.Exists(filePath))
{
return default(T);
}
T t = new T();
FileStream fs = new FileStream(filePath, FileMode.Open);
if (fs.Length < ) { return t; }
BinaryFormatter bf = new BinaryFormatter();
t = (T)(bf.Deserialize(fs));
fs.Close();
return t; }
public static void Save<T>(string filePath, List<T> t)
{ try
{
using (FileStream fss = new FileStream(filePath, FileMode.Create))
{
BinaryFormatter bs = new BinaryFormatter();
bs.Serialize(fss, t);
}
}
catch (Exception)
{ throw;
}
} }
}

缺点

1.如果有10w条记录,修改一条你就需要重写这个BIN文件,开销相当大,另外如果只是查询一条记录你也需要重新将这个BIN所有内容加载到内存建立对应的对象。

2.Access, SQL Server可以简单理解做了2件事情,第一他提供了统一界面,任何语言任何进程通过sql都可以与之通讯,获取数据。

第二件事情他提供了索引机制,通过索引不需要加载所有数据到内存就能根据sql定位查询结果。

3.修改对象结构会造成数据无法读取,需要保留原对象与新对象,将原数据读取至原对象,然后通过程序转换到新对象,将新对象重新保存在一个新文件(BIN)里面,最后原对象文件和原数据文件(BIN)删除。

4.实时保存,不建议实时保存,等所有处理完毕延迟保存数据最好。

但是如果你的应用很小,内存足够hold住数据,且不需要实时保存,那么此方法是可行的,而且可以说比用access都好,呵呵。

具体问题具体分析,合适就好。

最新文章

  1. WPF 画心2.0版之元旦快乐
  2. Python3 函数
  3. linux 下的clock_gettime() 获取精确时间函数
  4. Android中build target,minSdkVersion,targetSdkVersion,maxSdkVersion概念区分
  5. Redis 数据结构之Keys
  6. java微信接口之二—获取用户组
  7. Qt from Linux to Windows target
  8. 光流算法:灰度恒常约束,LK算法,HS算法
  9. Java 十六进制转十进制
  10. stm32按键识别
  11. L7,too late
  12. [html5] 学习笔记-应用缓存与Web workers
  13. 原生js表单序列化----- FormData
  14. mysql为什么范围查询(&gt;,&lt;,between,%like,like%)之后的索引无效
  15. 安装linux的关键步骤
  16. OAuth2简易实战(三)-JWT
  17. Vue Document
  18. form转化json
  19. scrapy+redis去重实现增量抓取
  20. [转]java nio解决半包 粘包问题

热门文章

  1. Unity 动画系统 Animation和Animator 常用小功能
  2. Go语言基础之12--Channel
  3. vue2.0组件的生命周期
  4. java——红黑树 RBTree
  5. 转:zookeeper配置运行——较为详细的教程
  6. vue 状态管理vuex(九)
  7. CSS3 中 图标编码 icon——Font-Awesome
  8. java编程--01介绍日期的比较
  9. 2019.03.19 读书笔记 string与stringbuilder的性能
  10. shell脚本之文件测试操作符及整数比较符