本文整理汇总了C++中QString::close方法的典型用法代码示例。如果您正苦于以下问题:C++ QString::close方法的具体用法?C++ QString::close怎么用?C++ QString::close使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QString
的用法示例。
在下文中一共展示了QString::close方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: enregistre
bool DDZ::enregistre(QString fichier, QString contenu, QString langue, QStringList annexes, QStringList ignore){
//Paramètres de fonction
ErrorManager instance_erreur;
QZipWriter ddz_global(fichier, QIODevice::WriteOnly);
//Création d'un XML global pour les préférences
QDomDocument preferences;
QDomElement xmlConfig = preferences.createElement("config");
QDomElement xmlLangue = preferences.createElement("langue");
QDomText xmlLangueTexte = preferences.createTextNode(langue);
xmlLangue.appendChild(xmlLangueTexte);
xmlConfig.appendChild(xmlLangue);
//On remplit le fichier avec le contenu
QString nom_fichier = fichier.split("/").last();
//Le nom du fichier est le même que le nom de l'archive globale si ce n'est que l'extention change
nom_fichier.remove(nom_fichier.size()-4, nom_fichier.size()).append(".ddw");
QByteArray array_contenu;
array_contenu.append(contenu);
ddz_global.addFile(nom_fichier, array_contenu);
//On regarde s'il y avait des images
int nb_images = contenu.count("<img src=");
//Il y a des images, on rentre dans la boucle
if(nb_images > 0){
//Définition de la RegExp
QRegExp regexp_images("<img[^>]*src=\"([^\"]*)");
//Récupération des images
int pos = 0; QStringList list;
while ((pos = regexp_images.indexIn(contenu, pos)) != -1){
list << regexp_images.cap(1);
pos += regexp_images.matchedLength();
}
if(nb_images != list.size()){
//On a pas trouvé toutes les images (ou on en a trouvé trop, ce qui est pire)
instance_erreur.Erreur_msg(QObject::tr("Problème lors de la détection d'images -> annulation de la sauvegarde"), QMessageBox::Ignore);
return false;
}
//Si on est ici, c'est que tout roule
//On ajoute les images détectées au zip
//ddz_global.addDirectory("images");
for(int i=0; i<list.size(); i++){
QString liste_temp = list.at(i);
QString nom_fichier = liste_temp.split("/").last();
//nom_fichier.prepend("images/");
//On récupère l'extention
QString extention = list.at(i).section('.', -1);
QImageReader image(list.at(i), extention.toUpper().toStdString().c_str());
ddz_global.addFile(nom_fichier, image.device());
}
}
//Traitement des annexes
if(annexes.size() > 0){
QDomNode xmlAnnexe = preferences.createElement("annexes");
for(int i=0; i<annexes.size(); i++){
QFile fichier(annexes.at(i));
fichier.open(QFile::ReadOnly);
ddz_global.addFile(annexes.at(i).split("/").last(), fichier.readAll());
fichier.close();
//Ajout des annexes au XML global
QDomElement thisAnnexe = preferences.createElement("annexe");
QDomText thisText = preferences.createTextNode(annexes.at(i).split("/").last());
thisAnnexe.appendChild(thisText);
xmlAnnexe.appendChild(thisAnnexe);
xmlConfig.appendChild(xmlAnnexe);
}
}
//Traitement des mots à ignorer définitivement (ajout dans le XML de config)
if(ignore.size() >= 1){
QDomNode xmlIgnore = preferences.createElement("orthographe");
for(int i=0; i<ignore.count(); i++){
QDomElement motIgnore = preferences.createElement("mot");
QDomText motTexte = preferences.createTextNode(ignore.at(i));
motIgnore.appendChild(motTexte);
xmlIgnore.appendChild(motIgnore);
xmlConfig.appendChild(xmlIgnore);
}
}
//Enregistrement des préférences
preferences.appendChild(xmlConfig);
QDomNode noeud = preferences.createProcessingInstruction("xml","version=\"1.0\"");
preferences.insertBefore(noeud, preferences.firstChild());
QByteArray array_prefs;
array_prefs.append(preferences.toString());
ddz_global.addFile("config.xml", array_prefs);
//On ferme tout
ddz_global.close();
//.........这里部分代码省略.........