1.重新组织了文件。
2.准备试试把所有元素都读入内存中。 Signed-off-by: facat@lab.com <facat@lab.com>
This commit is contained in:
88
core/mainfun.cpp
Normal file
88
core/mainfun.cpp
Normal file
@@ -0,0 +1,88 @@
|
||||
#include <QtCore/QCoreApplication>
|
||||
#include <QtCore/QTextCodec>
|
||||
#include "head.h"
|
||||
#include "transformerparser.h"
|
||||
#include "linetypeparser.h"
|
||||
#include <QFileInfo>
|
||||
#include <iostream>
|
||||
#include <fstream>
|
||||
#include <QTextStream>
|
||||
#include "qt_readxml.h"
|
||||
int mainfun(const QString &CIMFile)//CIMFile是文件路径
|
||||
{
|
||||
std::cout<<"parseing "<<CIMFile.toLocal8Bit().data()<<std::endl;
|
||||
QFile file(CIMFile);
|
||||
Qt_readxml reader;
|
||||
if(file.open(QIODevice::ReadOnly))
|
||||
{
|
||||
std::cout<<"File has loaded..."<<std::endl;
|
||||
reader.XmlReaderreadFile(&file);
|
||||
reader.XmlReaderTopologyAnalyse();
|
||||
reader.XmlReaderDealData();
|
||||
// reader.XmlReaderInterface();
|
||||
|
||||
QFileInfo fileInfo(CIMFile);
|
||||
QFile file_output(fileInfo.path()+"\\iPso_"+fileInfo.baseName()+".txt");
|
||||
file_output.open(QIODevice::WriteOnly);
|
||||
reader.XmlReaderwriteFile(&file_output);
|
||||
file_output.close();//杜孟远
|
||||
QFile file_output1(fileInfo.path()+"\\iPso_"+fileInfo.baseName()+"_lineZeroResistance.txt");
|
||||
file_output1.open(QIODevice::WriteOnly);
|
||||
reader.XmlReaderzero_rx(&file_output1);
|
||||
// QFile fi("out.txt");
|
||||
// fi.open(QIODevice::Append);
|
||||
// QTextStream re(&fi);
|
||||
|
||||
// for(int i=0;i<reader.power_transformer.size();i++)
|
||||
// {
|
||||
// PowerTransformer trans=reader.power_transformer.at(i);
|
||||
// re<<trans.Model<<endl;
|
||||
// }
|
||||
// fi.close();
|
||||
QFile file_output2(fileInfo.path()+"\\iPso_"+fileInfo.baseName()+"_TransformerNoLoad.txt");
|
||||
file_output2.open(QIODevice::WriteOnly);
|
||||
reader.XmlReadernone_trans_pq(&file_output2);
|
||||
|
||||
QFile file_output3(fileInfo.path()+"\\iPso_"+fileInfo.baseName()+"_TransformerNoResistance.txt");
|
||||
file_output3.open(QIODevice::WriteOnly);
|
||||
reader.XmlReadernone_trans_rx(&file_output3);
|
||||
|
||||
QFile file_output4(fileInfo.path()+"\\iPso_"+fileInfo.baseName()+"_LineInfor.txt");
|
||||
file_output4.open(QIODevice::WriteOnly);
|
||||
reader.XmlReaderline_info(&file_output4);
|
||||
|
||||
QFile file_output5(fileInfo.path()+"\\iPso_"+fileInfo.baseName()+"_TransformerInfor.txt");
|
||||
file_output5.open(QIODevice::WriteOnly);
|
||||
reader.XmlReadertrans_info(&file_output5);
|
||||
|
||||
QFile file_totalLineLength(fileInfo.path()+"\\iPso_"+fileInfo.baseName()+"_LineTotalLength.txt");
|
||||
file_totalLineLength.open(QIODevice::WriteOnly);
|
||||
reader.XmlReaderTotalLineLenghth(&file_totalLineLength);
|
||||
|
||||
QFile file_output6(fileInfo.path()+"\\iPso_"+fileInfo.baseName()+"_ContactPoint.txt");
|
||||
file_output6.open(QIODevice::WriteOnly);
|
||||
reader.XmlReaderContactPoint(&file_output6);
|
||||
|
||||
QFile file_output7(fileInfo.path()+"\\iPso_"+fileInfo.baseName()+"_DisnetReconfig.txt");
|
||||
file_output7.open(QIODevice::WriteOnly);
|
||||
reader.XmlReaderDisnetReconfig(&file_output7);
|
||||
|
||||
file_totalLineLength.close();
|
||||
file_output1.close();
|
||||
file_output2.close();
|
||||
file_output3.close();
|
||||
file_output4.close();
|
||||
file_output5.close();
|
||||
file_output6.close();
|
||||
file_output7.close();
|
||||
file.close();
|
||||
return 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
std::cout<<"No file to read..."<<std::endl;
|
||||
return -1;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user