日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

大三软件工程小项目-小技术集合-读取XML文件及运行外部程序

發布時間:2025/3/15 asp.net 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 大三软件工程小项目-小技术集合-读取XML文件及运行外部程序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

服務端源碼下載地址為:

http://download.csdn.net/detail/qq78442761/9768662


關于什么是XML文件,在此不在啰嗦。

不知道的博友請百度補腦。

本程序的xml在如下地方:


xml內容如下:



在本程序中,此xml存儲了外部程序路徑,用于打開外部程序的。如下圖所示:


單擊了運行MYSQL后就會運行外部程序如下圖所示:


另外一個外部程序不做演示。


我們現在來講解一個簡單的,如何進行外部程序。

我們在MainWindow.里面看到關于這個按鈕的函數,如下

//運行外部MYSQL程序 void MainWindow::RunMYSQLProcess() {QString cmd=QString(qPrintable(ProXML->GetProcessDir("MYSQL")));m_Process.start(cmd,QStringList()<<"");ui->CMDplainTextEdit->appendPlainText(CurrTime::currentDateTime()+"打開外部MYSQL程序"); }
我們現在來定位m_Process。

我們這mainwindow.h里面可以看見一個私有的成員變量。

QProcess m_Process; //打開外部程序這個QProcess是在頭文件

#include <QProcess> 有這個start函數,就可以對外部程序進行激活。


下面是讀取xml。

在這個項目里面,有一個
docxml.h和docxml.cpp用于讀取xml


最上面的那個鏈接可以下載全套源碼,IDE為 Qt Creator 5.7


docxml.h

#ifndef DOCXML_H #define DOCXML_H#include <QtXml> #include <QDomDocument> #include <QFile> #include <QIODevice> #include <QDomNode> #include <QDebug> #include <QMessageBox> #include <QString>class DOCXML { public:DOCXML();QString GetProcessDir(QString ProName); //獲取程序路徑 private:QDomDocument *doc; //QDomDocument類對象,代表一個XML文檔QFile *file; //建立指向in.xml文件的QFile對象QDomNode *Node; //XML結點 };#endif // DOCXML_H


docxml.cpp

#include "docxml.h"DOCXML::DOCXML() {file=new QFile("in.xml");if(!file->open(QIODevice::ReadOnly)){QMessageBox::critical(NULL,"錯誤","in.xml打開失敗",QMessageBox::Cancel);}else{//將文件讀入doc中doc=new QDomDocument();if(!doc->setContent(file)){QMessageBox::critical(NULL,"錯誤","in.xml讀取",QMessageBox::Cancel);}elsefile->close();} }QString DOCXML::GetProcessDir(QString ProName) {QDomElement docElem = doc->documentElement(); //返回根元素QDomNode n = docElem.firstChild(); //返回根節點的第一個子節點//如果節點不為空while(!n.isNull()){if (n.isElement()) //如果節點是元素{QDomElement e = n.toElement();// 獲得元素e的子節點的列表QDomNodeList list = e.childNodes();//獲取程序名QDomNode node = list.at(0);if(ProName==qPrintable(node.toElement().text())){node = list.at(1);//qDebug() << qPrintable(node.toElement().text());;return qPrintable(node.toElement().text());}}n = n.nextSibling(); //下一個兄弟節點}return "fail"; } 這就是讀取XML文件及運行外部程序


總結

以上是生活随笔為你收集整理的大三软件工程小项目-小技术集合-读取XML文件及运行外部程序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。