QFile的文件清空操作

QFile file("/etc/wpa_supplicant.conf");
file.open(QIODevice::ReadOnly);
QTextStream io(&file);
file.close();

file.open(QIODevice::Truncate);
file.close();

file.open(QIODevice::WriteOnly);
io<<"ctr_interface=/var/run/wpa_supplicant\nupdate_config=1\n";
file.close();

QFile没有提供清除文件内容的函数,上述代码的方法可以实现清除文件的内容,并替换(如果在WriteOnly模式下,没有写入操作,则直接清空);上述代码参考的来源为:http://blog.sina.com.cn/s/blog_71cb68cb01014t8o.html,(在网上找过资料,基本都是采用先读在写的方式进行清空操作的)

(注意一点:QIODevice::Truncate模式,以重写的方式打开);
对于为什么文件内容的清空可以采用,先读打开,在重写打开,最后写打开 这样的流程实现,不甚理解,有知道的同行可以留下原因,不胜感激。

你可能感兴趣的:(Qt,QFile,Qt)