QT 对文件头的读写
请问一下在QT下怎么对 文件头 的读写啊?
注意看是 “文件头” 而不是 “头文件” 哟
网上百度了很久,几乎找不到先关资料,有也是貌似API或者是C语言的,可是我看不懂那些例子,有没有好心人可以教一下在QT下如何对 文件头 进行读写?
本人学生,最近在做一个功能,就是把 一个文件的文件头进行修改,此时它就会变成一个不可识别的文件类型,然后在把它的图标关联到一个自定义的图标里面。
有没有牛人提供相关的具体操作实现?拜托了·····
最近比较赶时间,就差这个功能了
[解决办法]
先QFile把文件加载过来, 然后QDateStream把文件和流关联起来. 然后直接操作流就可以了
[解决办法]
void MainWindow::on_actionLock_triggered()
{
QString str = QFileDialog::getOpenFileName();
if(str.isEmpty()){
return;
}
QByteArray ba;
{
QFile file(str);
if(!file.open(QFile::ReadOnly)){
return;
}
QDataStream in(&file);
in >> m_d;
ba = file.readAll();
}
{
QFile file(str);
if(!file.open(QFile::WriteOnly)){
return;
}
QDataStream out(&file);
out << 0xFFFF;
out << ba;
}
}
void MainWindow::on_actionUnlock_triggered()
{
QString str = QFileDialog::getOpenFileName();
if(str.isEmpty()){
return;
}
QByteArray ba;
{
QFile file(str);
if(!file.open(QFile::ReadOnly)){
return;
}
QDataStream in(&file);
quint32 sk;
in >> sk;
ba = file.readAll();
}
{
QFile file(str);
if(!file.open(QFile::WriteOnly)){
return;
}
QDataStream out(&file);
out << m_d;
out << ba;
}
}