• 3109阅读
  • 2回复

[提问]QT程序关闭后数据保护问题 [复制链接]

上一主题 下一主题
离线qazaq408
 

只看楼主 倒序阅读 楼主  发表于: 2014-11-25
这几天撸了一个学生管理系统(恩,相信你见过无数个了。。)

然后用户分老师和学生2个类型,老师登陆后会跳到一个输入信息界面,然后输入各种成绩之类的信息,然后我把数据放在一个QString<int>的向量内,然后这个向量用QDataStream输入一个文件

我的设想是每次输入一个学生信息,就把对应的QString<int>,输入到一个文件中,然后用QFile新建/打开文件时候把文件名 命名为 学生姓名,这样学生用户登录后就可以按自己姓名查询自己成绩

程序会在自己的目录下新建一个  ./info的子文件夹,然后每次生成的存放信息的文件都会被放到这个子目录下

我的系统是linux(ubuntukylin14.04),然后我想,如果我关闭的这个学生管理系统,那我在其他的一些操作是很有可能改动(各种误操作)这个./info目录下的文件,那这样的情况下就会导致再次运行学生管理系统的时候出错(如查询不到等);

没有办法通过程序代码设置这个子目录只能通过学生管理系统这个程序来修改,当程序结束之后,我没有办法去修改这个./info目录下的文件

比如关闭程序后,rm -rf ./info  无法删除这个目录(我是指本用户,不是root用户)
离线gnibuoz

只看该作者 1楼 发表于: 2014-11-25
这种东西最好用数据库存储,你用文件存储效率太低不说,还会生成很多文件,而且你查找起来也不方便,用数据库的话就很方便了,而且存储查询更新删除等操作都很方便,而且也不难,按你的要求的话,花上几个小时看这个,应该就没有问题了,毕竟磨刀不误砍柴工嘛,加油!
我就是我,颜色不一样的烟火...
离线qazaq408

只看该作者 2楼 发表于: 2014-11-26
回 gnibuoz 的帖子
gnibuoz:这种东西最好用数据库存储,你用文件存储效率太低不说,还会生成很多文件,而且你查找起来也不方便,用数据库的话就很方便了,而且存储查询更新删除等操作都很方便,而且也不难,按你的要求的话,花上几个小时看这个,应该就没有问题了,毕竟磨刀不误砍柴工嘛,加油![表情]  (2014-11-25 18:41) 

其实我在学习QT的文件储存和读取
偶然想到这个问题
自学党,还没看到数据库的部分
快速回复
限100 字节
 
上一个 下一个