程序很简单,在实现功能的同时,介绍一些函数的基本用法,供初学者参考
int FileIO::readLFCAL(QDir dataDir)
{
QString filepath = dataDir.absolutePath() + "/LF.CAL"; // 打开文件的位置
QFile CAL(filepath); //打开文件
int LFCalRes; //定义一个整型,为了保存读到的数据
if (CAL.open(QIODevice::ReadOnly))
{
QTextStream stream(&CAL);
QString curLine; //定义一个字符串,保存数据
while (!stream.atEnd())
{
curLine = stream.readLine(); //读取一行数据
break;
}
LFCalRes = curLine.mid(1, 1).toInt(); //读取第一个字符,并转换成int型
}
return LFCalRes;
}
对于readline()这个函数而言,它每次只读取一行数据,遇到"\n"就会停止,而且它只会保存一行数据,如上面的代码,如果将break去掉,那么当while执行结束后,它只会保存最后一行的数据。
对于mid(),这个函数有两个参数,如上mid(1,1),第一个参数是位置,第二个参数是截取字符串的大小,如果括号内只填写一个数字,那么默认是位置,而读取的内容则是该数字以后的内容,下面是实例;
QString s = "xuan yuan”
s.mid(5,1) = “y”
s.mid(5) = “yuan”
还有其他截取字符串长度的,如left()和right() 一个是从左截,一个是右截,里面的参数是截多少个,
字符型之间的转换
这里使用的是将字符型转换为int型,转换为double,就是.todouble(),还有.toUpper()整型转换成QString,