gpt4 book ai didi

c++ - 在文本文件的特定行和列上插入值

转载 作者:行者123 更新时间:2023-11-30 04:45:38 25 4
gpt4 key购买 nike

我想在我的大文本文件的第 14 行和第 19 列中插入双选框的值。我创建了循环以在第 14 行插入值,但它只是放在该行的第一列。任何人都可以帮我移动文本后的值,参数 PW_x = 吗?

这是我的文本文件的一部分。

parameter  PW_x = "i want to insert value here this is 14th line and 19th column"      
parameter PW_y =
parameter PD =
parameter PC =

这是我的代码

void MainWindow::on_doubleSpinBox_6_editingFinished()

{
QString file("D:\\my text file name");

QFile outputFile(file);
if (outputFile.open(QIODevice::ReadWrite | QIODevice::Text))
{
for (int i=0;i<13;i++) {
outputFile.readLine();
}
QTextStream stream(&outputFile);
stream << QString::number(ui->doubleSpinBox_6->value());
}
}

最佳答案

正如我在评论中建议的那样,您应该解析->编辑->保存

您当然可以使用其他方法在文件中插入值,例如尝试匹配和替换文件每一行中的字符串(请注意,这是非常低效的..)但这里有一个例子:

在 for 循环中,尝试用值 PW_x = 'your spinbox double' 替换字符串 "PW_x = ",替换操作将原封不动地保留所有与您要查找的字符串不匹配的行...

举个例子

QString l1{"parameter  PW_x = " };
QString l2{"parameter PW_y = " };
QString l3{"parameter PD = " };
QString l4{"parameter PC = " };
QString doubleAsString{"3.1415"};
l1.replace("PW_x = ", "PW_x = " + doubleAsString);
l2.replace("PW_x = ", "PW_x = " + doubleAsString);
l3.replace("PW_x = ", "PW_x = " + doubleAsString);
l4.replace("PW_x = ", "PW_x = " + doubleAsString);
qDebug() << "v1: " << l1;
qDebug() << "v2: " << l2;
qDebug() << "v3: " << l3;
qDebug() << "v4: " << l4;

关于c++ - 在文本文件的特定行和列上插入值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57156036/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com