最近在做一个类似于写日记的程序,想法是左边一列tableview用来显示所打开的文件夹下的日志文件
右边一个textEdit用来显示单击日志条目时显示对应日志文件,另外可以保存所有日志文件显示时的状态。
最开始想的是通过map接口来进行文件映射(对文件映射不熟悉所以使用它)
在建立关联文件映射的时候,发现如果是新建文件,则映射建立失败
如果是旧文件但如果文件中无内容,也会失败
经过测试和排查,发现接口
uchar *QFileDevice::map(qint64 offset, qint64 size, MemoryMapFlags flags = NoOptions)
map的意思就是将文件从offset位置开始,到size字节的数据映射到内存中(但是size的大小也没有规定诶)
当时想的是,对内存映射进行修改然后文件也会对应修改,就比较爽了赛。
结果
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)