在射频产品测试领域中,使用仪器测试的时候需要测试出射频线缆的线损,然后才能正真的测试出当前射频产品的功率输出。
在每一次实际产品测试中会去调用存放已经写号完成的线损数据,一般是将线损数据存放在本地文件或者数组里面。
存放在本地文件一般有四种方式:INI、TXT、数据库、Excel,其中INI文件读取的方式最快,且相对来说比较方便。
写入INI文件的方式:
void MainWindow::Create_Write_Ini(int Num, double PealGL)
{
// QString fileName = QCoreApplication::applicationDirPath() + "./Ini/Config.ini";//文件的路径
// QSettings configIni (fileName, QSettings::IniFormat);
// configIni.setIniCodec("UTF8");
// QString Path = "Power/"+QString::number(Num);
// configIni.setValue(Path,PealGL);
// Path = Path.left(6); //可以用left right mid 三个函数进行字符串的截取
QDir tempDir;
QString currentDir = tempDir.currentPath();
tempDir.mkpath("./Ini/");//在release 的上一级创建文件夹
QString fileName = currentDir + "/Ini/Config.ini";//文件的路径
QSettings configIni (fileName, QSettings::IniFormat);
configIni.setIniCodec("UTF8");
QString Path = "Power/"+QString::number(Num);
configIni.setValue(Path,PealGL);
Path = Path.left(6); //可以用left right mid 三个函数进行字符串的截取
}
void MainWindow::Create_Write_Ini_UpGrade(int Fren_MHz, double PealGL,QString Name_Start)
{
QDir tempDir;
QString currentDir = tempDir.currentPath();
tempDir.mkpath("./InI/");//在release 的上一级创建文件夹
QString fileName = currentDir + "/InI/Config.ini";//文件的路径
QSettings configIni (fileName, QSettings::IniFormat);
configIni.setIniCodec("UTF8");
QString Path = Name_Start+"/"+QString::number(Fren_MHz);
configIni.setValue(Path,PealGL);
int Lenth = Name_Start.length()+1;
Path = Path.left(Lenth); //可以用left right mid 三个函数进行字符串的截取
}
读取INI的方式:
QString MainWindow::Create_Read_Ini(int NumInT)
{
// QString Num;
// QString fileName = QCoreApplication::applicationDirPath() + "./Ini/Config.ini";//文件的路径
// QSettings configIni (fileName, QSettings::IniFormat);
// configIni.setIniCodec("UTF8");
// QString Path = "Power/"+QString::number(NumInT);
// Num = configIni.value(Path).toString();
// Path = Path.left(6);
// return Num;
QDir tempDir;
QString currentDir = tempDir.currentPath();
tempDir.mkpath("./Ini/");//在release 的上一级创建文件夹
QString Num;
QString fileName = currentDir + "/Ini/Config.ini";//文件的路径
QSettings configIni (fileName, QSettings::IniFormat);
configIni.setIniCodec("UTF8");
QString Path = "Power/"+QString::number(NumInT);
Num = configIni.value(Path).toString();
Path = Path.left(6);
return Num;
}
QString MainWindow::Create_Read_Ini_UpGrade(int Fren_MHz,QString Name_Start)
{
QDir tempDir;
QString currentDir = tempDir.currentPath();
tempDir.mkpath("./InI/");//在release 的上一级创建文件夹
QString Num;int Lenth;
QString fileName = currentDir + "/InI/Config.ini";//文件的路径
QSettings configIni (fileName, QSettings::IniFormat);
configIni.setIniCodec("UTF8");
QString Path = Name_Start+"/"+QString::number(Fren_MHz);
Num = configIni.value(Path).toString();
Lenth = Name_Start.length()+1;
Path = Path.left(Lenth);
return Num;
}
带UpGrade的需要注意的是,这样在测试的时候可以采取查表的方式来任意的读取频率下的线损【通过设置步进Step来循环查】