一、背景
项目中需要用到xml工单的生成,每次都要进行脑残的粘贴复制修改xml任务工单,作为程序员的我们,怎么甘心做这么重复无聊的工作呢?于是就写了一个小工具来操作xml,实现自动化,主要使用QDomDocument操作。废话不说了,直接上码!
二、代码如下
/mainwindow.h*/
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QtXml/QDomDocument>
#include <QtXml/QDomElement>
#include <QFileInfoList>
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private slots:
// 输入xml文件
void on_pushButton_clicked();
// 输入需要的文件夹路径
void on_pushButton_2_clicked();
// 确定插入
void on_pushButton_3_clicked();
private:
// 根据文件路径搜索文件下面的文件
QFileInfoList getFileList(QString path);
// 在input结点插入需要的file结点
bool insertInputItem(QDomDocument doc,QString outputPath,QFileInfoList fileInfoList, QDomElement inputElem);
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
/**********************************mainwindow.cpp***********************************/
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QFileDialog>
#include <QMessageBox>
#include <QTextStream>
#include <QtXml/QDomNode>
#include <QDebug>
#pragma execution_character_set("utf-8")
MainWindow::MainWindow(QWidget *p