首页 > 其他 > 详细

Qt Write File

时间:2017-12-09 12:42:52      阅读:210      评论:0      收藏:0      [点我收藏+]

Write to File with Qt

Write Binary to File with Qt


void WriteBinaryToFile(QString binaryStr, QString filePath)
{
    QFile file;
    QByteArray ba;

    QStringList ltStrs = binaryStr.split(' ');
    foreach(QString str,ltStrs) {
        ba.append((char)(str.toInt(0,16) & 0xff));
    }

    file.setFileName(filePath);
    if(!file.open(QIODevice::WriteOnly)){
        return;
    }
    
    file.write(ba);
    file.close();
}

Write plain Text to File with Qt

void WritePlainTextToFile(QString plainText, QString filePath)
{
    QFile file;
    QTextStream out;

    file.setFileName(qsFilePath);
    if(!file.open(QIODevice::WriteOnly | QIODevice::Text)){
        return;
    }

    out.setDevice(&file);
    out << plainText;
    file.close();
}

Write File with Unicode bom

///< some include

int main(int argc, char \*argv[])
{
    QCoreApplication a(argc, argv);
    QString str = QString("这是中文,QString");
    QFile file;
    QTextStream out;

    file.setFileName("a.txt");
    if(!file.open(QIODevice::WriteOnly|QIODevice::Text)){
        qDebug() << file.errorString();
        return 0;
    }

    out.setDevice(&file);
    out.setCodec("UTF-16");   ///< unicode
    out.setGenerateByteOrderMark(true); ///< with bom
    out << str;
    file.close();
    qDebug() << "OK!";

    return a.exec();
}

How to check(see) it in vim

 vim see the file hex: %!xxd
 see the text    : %!xxd -r

Another way to write file

ofstream myfile;
myfile.open("a.txt");
myfile << "\xEF\xBB\xBF"; // UTF-8 BOM
myfile << "\xE2\x98\xBB"; // U+263B
myfile.close();
ofstream myfile;
myfile.open("a.txt");
myfile << "\xFF\xFE"; // UTF-16 BOM
myfile << "\x3B\x26"; // U+263B
myfile.close();

Qt Write File

原文:http://www.cnblogs.com/zi-xing/p/7725572.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!