gpt4 book ai didi

c++ - Shell 脚本执行 - 错误处理

转载 作者:搜寻专家 更新时间:2023-10-31 01:02:22 24 4
gpt4 key购买 nike

我正在使用 qt creator 设计一个图形用户界面应用程序。在那里,如果我按下一个按钮,.csv 文件中的值将导入到 sqlite3 数据库表中。

为此,我使用 QProcess 启动了一个 shell 脚本,其中包含用于导入数据的命令。

void MainWindow::on_pushButton_clicked()
{
QProcess process;
process.startDetached("/bin/sh", QStringList()<< "/home/aj/myscript.sh");
}

用于导入的 myscript.sh 是--

echo -e '.separator ","\n.import import_table.csv test_table' | sqlite3 testdatabase.db

这种方法背后的原因是,如果不创建自定义解析解决方案,就不能将点命令直接集成到 c++ gui 程序中。

现在,这种方法(QProcess 和 shell 脚本)非常适合我。但一个瓶颈是它不提供任何错误处理/识别。

例如,如果导入命令在数据检索过程中途停止,或者 .csv 中的所有值都没有导入,我就不会知道问题所在。有没有办法知道导入过程中是否出现问题??? (通过 QDebug 重定向消息???)

最佳答案

QProcess 有一个名为 exitCode() 的成员函数,奇怪的是它返回进程的退出代码。

http://qt-project.org/doc/qt-5/qprocess.html

找到该答案需要在 google 中搜索文档 10 秒...

关于c++ - Shell 脚本执行 - 错误处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27356530/

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