欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Qt之文件读取QFile、QFileDialog、QFileInfo

程序员文章站 2024-02-19 17:41:46
...
QFileDialog
//通过文件部分信息,打开文件目录对话框进行选择,所需文件(一般为XML)
QString path;
path = QFileDialog::getOpenFileName(this, LSTR("打开编成方案"), curPath, LSTR("工程文件(*.xml)"));
if (path.isEmpty()) 
    return;

QFile
//打开文件 (由绝对路径fpPath得)
QFile fFile(fpPath);
if (!fFile.open(QIODevice::ReadOnly | QIODevice::Text)) 
    return false;

if (!doc.setContent((QIODevice *)&fFile, &errMsg, &errRow, &errCol))
{
    fFile.close();
    qDebug("兵力编成文件格式错误,无法打开。");
    return false;
}
fFile.close();


接下来进行是QDOMDocument读取XML文件,博主顺便讲解一下,前端内容的临时存储,及二者的区别

QDir
//获取文件
ui.formListRed->clear();
QDir dir("./Formation/Red");
QStringList fls = dir.entryList(QStringList()<<"*xml",QDir::Files);

QFileInfo inf(f);
QListWidgetItem* it  = new QListWidgetItem(inf.baseName());
ui.formListRed->addItem(it);

QFileInfo

Qt中获取文件路径和文件名、后缀名

QString file_full, file_name, file_path,file_suffix ;
QFileInfo fileinfo;
file_full = QFileDialog::getOpenFileName(this,LSTR("打开编成方案"),path,LSTR("工程文件("*.xml")"));
fileinfo = QFileInfo(file_full);
//文件名
file_name = fileinfo.fileName(); 
//文件后缀
file_suffix = fileinfo.suffix()
//绝对路径
file_path = fileinfo.absolutePath();

1.C++学习之路
2.QMessageBOX
3.QPainter