qt中文件操作问题
刚学qt,c语言也学得不是太好,最近在用qtdesigner编一个界面,想请教一下关于数据导入的问题。我要将一个txt中的数据导入一个数组中,查了一下要用到QTextSt...
刚学qt,c语言也学得不是太好,最近在用qt designer编一个界面,想请教一下关于数据导入的问题。我要将一个txt中的数据导入一个数组中,查了一下要用到QTextStream,QFile但是不熟啊,谁帮帮忙,写个例子给我看看。txt中有两列数据,部分数据如下(这里列出了其中的6行,共有3000行),要把第一列的数据导入数组a[3000],第二组的数据导入a[3000]中。
0.0000000e+000 1.8000000e-001
5.0000000e-011 1.9600000e-001
1.0000000e-010 1.8000000e-001
1.5000000e-010 1.8800000e-001
2.0000000e-010 1.8000000e-001
2.5000000e-010 1.8800000e-001 展开
0.0000000e+000 1.8000000e-001
5.0000000e-011 1.9600000e-001
1.0000000e-010 1.8000000e-001
1.5000000e-010 1.8800000e-001
2.0000000e-010 1.8000000e-001
2.5000000e-010 1.8800000e-001 展开
3个回答
展开全部
很容易的,Qt很智能的会识别忽略空格或者tab或者回车,因此只需要按照顺序读就可以了。有问题可以多看看Qassistant,里面其实用法例子都很多
#include <QApplication>
#include <QFile>
#include <QTextStream>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
double a[6],b[6];
QFile *dataFile = new QFile;
QTextStream *textStream = new QTextStream(dataFile);
QString fileName("data.txt");
dataFile->setFileName(fileName);
dataFile->open(QIODevice::ReadOnly | QIODevice::Text);
for (int i=0;i<6;i++)
{
*textStream>>a[i]>>b[i];
}
app.exec();
return 0;
}
#include <QApplication>
#include <QFile>
#include <QTextStream>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
double a[6],b[6];
QFile *dataFile = new QFile;
QTextStream *textStream = new QTextStream(dataFile);
QString fileName("data.txt");
dataFile->setFileName(fileName);
dataFile->open(QIODevice::ReadOnly | QIODevice::Text);
for (int i=0;i<6;i++)
{
*textStream>>a[i]>>b[i];
}
app.exec();
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询