c++文本有关问题.

c++文本问题........
现在要做一个通讯录系统...想用文本保存数据 可要实现数据有条件的读取、修改很头疼啊 怎么从一个特定的字符读到下一个特定字符啊...还有,输出的时候能按照学号升序排列吗??用数据库很简单可是文本的话就零乱啦.... 求前辈解答!!不胜感激....

------解决方案--------------------
看你需要了。
如果不使用数据库,则程序的依赖较少,安装和部署就比较容易。好多词典软件就不使用数据库,而使用自己定义的数据格式,自己定义的索引。不过工作量较大。

使用数据库,程序非常简单,特别是用sql方法访问的数据库,移植也比较方便,不过安装很麻烦。需要安装数据库server端程序,还需要数据库的驱动。程序也比较大,需要依赖许多组件。
------解决方案--------------------
不想学复杂的数据库的话,有两种思路:

1,sqlite 文件型数据库, 自己baidu google看看
2,用txt存放, 不过你需要在程序开始的时候预加载所有数据,
在内存操作数据更新,记得用排序的相关算法.
定时保存数据,
退出程序时也保存次数据.

第2个方法比较老土,处理的数据很重要的话就不要用了.使用中途一个断电就全没了.