• 3422阅读
  • 1回复

[提问]如何在QT中创建一个文件 [复制链接]

上一主题 下一主题
离线tsuibin
 

只看楼主 倒序阅读 楼主  发表于: 2012-01-12
— 本帖被 XChinux 从 C/C++基础 移动到本区(2012-01-12) —
我在QFile这个类里面没发展哪个函数可以创建一个文件
QFile里面的open设置为写和截断也没法创建一个文件,

有谁知道吗?
离线itstudy
只看该作者 1楼 发表于: 2012-01-12
1指定文件的文件夹路径是否存在  QFile好像不会自动创建文件夹
2.可以利用C语言创建文件的方式
3.这段代码是我写的日志记录 仅供参考
QMutex mutex;
bool QZkFile::WriteLog(QString sText)
{
    QString strPath    = QZkFile::GetExePath();
    QDateTime date     = QDateTime::currentDateTime();
    QString sDate      = date.toString("yyyyMMdd");
    QString strLogFile = strPath + "Log/Log" + sDate + ".txt";
    QString sPreHeader = date.toString("yyyy-MM-dd hh:mm:ss  ");
    QString sLogPath   = strPath + "Log/";

    QDir dir;
    dir.setPath(sLogPath);
    if(!dir.exists())
        dir.mkdir(sLogPath);

    mutex.lock();
    QFile file;
    file.setFileName(strLogFile);
    if (!file.open(QIODevice::WriteOnly|QIODevice::Text|QIODevice::Append))
        return false;
    QTextStream out(&file);
    out <<sPreHeader<<sText<<"\n";
    file.close();
    mutex.unlock();
}
快速回复
限100 字节
 
上一个 下一个