记录QT学习中的小知识
QT写文本文件,头文件需包含
#include <QFile>
#include <QTextStream>
QString fileName = "test.sh";
QFile file(fileName);
if (!file.open(QIODevice::WriteOnly))
return 0;
//用文本流读取文件
QTextStream stream(&file);
//转换为字符串
QString str = "export VID=0x00001\n";
//写入文本流
stream << str;
//关闭文件
file.close();
QFile打开的时候要指定QIODevice::Text,否则\n和endl会被解析成不同的内容,特别是windows下,因为windows下换行必须是CR+LF,比如file.open(QIODevice::Write),之后不管是用QTextStream还是别的,windows下直接写入“\n”或者用stream的endl,换行都是LF;如果是file.open(QIODevice::Write | QIODevice::Text),换行就是成了CR+LF了。