/*************************************************
* QIODevice::ReadWrite 可读写
* QIODevice::Text 换行符生效
* QIODevice::Append 追加写入
* QFile::Truncate 表示将原文件清空
**************************************************/
void MainWindow::test()
{
#ifdef QTextStream_read
QFile file("e:\\file.txt");
if (!file.open(QIODevice::ReadOnly | QIODevice::Text)){
qDebug()<<"open fail!";
return;
}
QTextStream in(&file);
// QString line1= in.read(1); //读取第一个字符
// qDebug()<<line1;
// line1= in.read(10); //自动读取下10个字符
// qDebug()<<line1;
QString line1= in.readLine(0); //读取第1行
QString line2= in.readLine(2); //读取下1行前2个字符
qDebug()<<line1;
qDebug()<<line2;
QString line1= in.readAll(); //读取全部txt文档,并归为一个字符串
bool a=in.seek(6); //定位文本中的第6个位置
QString line2= in.read(1) ; //读取该位的1字符
qDebug()<<line2;
//按行读取
while (!in.atEnd()) {
QString line = in.readLine();
qDebug()<<line;
}
#else
QString LogFile;
QString runPath = QCoreApplication::applicationDirPath(); //
LogFile.clear();
LogFile.append(tr("%1/LogFile_%2.txt").arg(runPath).arg(QDate::currentDate().toString("yyyyMMdd")));
QFile file(LogFile);//"e:\\file.txt"
if (!file.open(QIODevice::WriteOnly | QIODevice::Text |QIODevice::Append)){
qDebug()<<"open fail!";
return;
}
QTextStream out(&file);
out<<"test"<<endl;
out<<"456";
out.flush();
file.close();
#endif
}
QTextStream 读写文件
最新推荐文章于 2023-05-09 17:35:06 发布