新建项目

main.cpp

#include
<QCoreApplication>

#include
<QCommandLineParser>

#include
<QDebug>

#include
<stdio.h>

int
main(int
argc,
char**
argv)

{

QCoreApplication
app(argc,
argv);

app.setApplicationVersion("1.0.0.0");

app.setApplicationName("xxxx
tools");

/*
QCommandLineParser是提供了一系列命令行参数的类*/

QCommandLineParser
parser;

//添加help选项(在窗口上有-h,--help
and
?),这个选项是由

//QCommandLineParser自动自动处理的

parser.addHelpOption();

//添加
-v/--version选项,这个用来显示应用程序的版本信息

//这个同样是由QCommandLineParser自动处理,同样可以通过

//QCoreApplication::setApplicationVersion()来添加版本信息

parser.addVersionOption();

//通过QCommandLineOption类定义可能的命令行选项

QCommandLineOption
p(QStringList()
<<
"p"
<<
"package",
"set
package
name
of
Android",
"com.itcast.hello");

parser.addOption(p);

QCommandLineOption
l(QStringList()
<<
"l"
<<
"language",
"set
code
language
c++
or
lua",
"c++");

parser.addOption(l);

//通过app.arguments()返回一系列的命令行参数

//parser.parse(app.arguments());

parser.process(app);

//通过parser来解析一系列命令行参数

QString
strValue
=
parser.value("p");

//qCritical()
<<
"p
is"
<<
strValue;

//打印出解析出来的命令行参数

printf("p
is
%s\n",strValue.toUtf8().data());

//表示的是language

strValue
=
parser.value("l");

qDebug()
<<
parser.positionalArguments();

return
0;

//
return
app.exec();

}

运行项目:进入项目所在目录E:\QT\build-T26Command-Desktop_Qt_5_3_MinGW_32bit-Debug\debug
,输入T26Command.exe -l cpp -p cn.com.toto

弹出如下提示错误:

解决办法是进入:C:\Qt\Qt5.3.1\5.3\mingw482_32\bin拷贝上面需要的dll到E:\QT\build-T26Command-Desktop_Qt_5_3_MinGW_32bit-Debug\debug目录中!

再次运行,依次发现需要如下dll文件

libgcc_s_dw2-1.dll

libstdc++-6.dll

libwinpthread-1.dll

icuin52.dll

icuuc52.dll

icudt52.dll

最终结果:

3.QT中QCommandLineParser和QCommandLineOption解析命令行参数的更多相关文章

  1. linux 中解析命令行参数(getopt_long用法)

    linux 中解析命令行参数(getopt_long用法) http://www.educity.cn/linux/518242.html 详细解析命令行的getopt_long()函数 http:/ ...

  2. C语言中使用库函数解析命令行参数

    在编写需要命令行参数的C程序的时候,往往我们需要先解析命令行参数,然后根据这些参数来启动我们的程序. C的库函数中提供了两个函数可以用来帮助我们解析命令行参数:getopt.getopt_long. ...

  3. optparse模块解析命令行参数的说明及优化

    一.关于解析命令行参数的方法 关于“解析命令行参数”的方法我们一般都会用到sys.argv跟optparse模块.关于sys.argv,网上有一篇非常优秀的博客已经介绍的很详细了,大家可以去这里参考: ...

  4. python解析命令行参数

    常常需要解析命令行参数,经常忘记,好烦,总结下来吧. 1.Python 中也可以所用 sys 的 sys.argv 来获取命令行参数: sys.argv 是命令行参数列表 参数个数:len(sys.a ...

  5. boost之program_options库,解析命令行参数、读取配置文件

    一.命令行解析 tprogram_options解析命令行参数示例代码: #include <iostream> using namespace std; #include <boo ...

  6. Windows下解析命令行参数

    linux通常使用GNU C提供的函数getopt.getopt_long.getopt_long_only函数来解析命令行参数. 移植到Windows下 getopt.h #ifndef _GETO ...

  7. 使用 Apache Commons CLI 解析命令行参数示例

    很好的输入参数解析方法 ,转载记录下 转载在: https://www.cnblogs.com/onmyway20xx/p/7346709.html Apache Commons CLI 简介 Apa ...

  8. Shell 参数(2) --解析命令行参数工具:getopts/getopt

    getopt 与 getopts 都是 Bash 中用来获取与分析命令行参数的工具,常用在 Shell 脚本中被用来分析脚本参数. 两者的比较 (1)getopts 是 Shell 内建命令,geto ...

  9. getopt_long函数解析命令行参数

    转载:http://blog.csdn.net/hcx25909/article/details/7388750 每一天你都在使用大量的命令行程序,是不是感觉那些命令行参数用起来比较方便,他们都是使用 ...

随机推荐

  1. VK Cup 2017 - Квалификация 1

    CF上的VK Cup 2017资格赛1,好像很水,因为只有俄文所以语言是最大的障碍--不过之后正式赛貌似就有英文了.(比赛貌似只有开俄文模式才看的到--) 时长1天,不随时间扣分.FallDream ...

  2. SPOJ 7258 Lexicographical Substring Search

    Little Daniel loves to play with strings! He always finds different ways to have fun with strings! K ...

  3. zookeeper快速入门

    一.zookeeper简介 zookeeper 是apache旗下的hadoop子项目,它一个开源的,分布式的服务协调器.同样通过zookeeper可以实现服务间的同步与配置维护.通常情况下,在分布式 ...

  4. Python Web学习笔记之多道程序设计技术和操作系统的特性

    采用了多道程序设计技术的操作系统具有如下特性 : ① 并发性.它 是指两个或两个以上的事件或活动在同一时间间隔内发生.操作系统是一个并发系统,并发性是它的重要特征,操作系统的并发性指计算机系统中同时存 ...

  5. Android 自定义支持快速搜索筛选的选择控件(一)

    Android 自定义支持快速搜索筛选的选择控件 项目中遇到选择控件选项过多,需要快速查找匹配的情况. 做了简单的Demo,效果图如下: 源码地址:https://github.com/whieenz ...

  6. EF 6.x、EF Core实现dynamic动态查询和EF Core实现多个上下文实例池你了解多少?

    前言 很长一段时间没有写博客了,今天补上一篇吧,偶尔发现不太愿意写博客了,太耗费时间,不过还是在坚持当中,毕竟或许写出来的东西能帮到一些童鞋吧,接下来我们直奔主题.无论是在在EF 6.x还是EF Co ...

  7. HTTP Status Codes 查询表

    Web项目中经常会出现各种状态码,今天看到一个博客,挺不错,记录下来.

  8. easyui datagrid 动态表头2

    前端 function goqry() { $("#form").form("submit", { url: "CJCK_bjcjfx_yfsl.as ...

  9. web缓存之--http缓存机制

    一.web缓存可以分为数据库缓存.代理服务器缓存.浏览器缓存. 其中浏览器缓存又包含很多内容:http缓存.indexDb.cookie.localStorage等.本片只讨论http缓存相关内容. ...

  10. 解决使用web开发手机网页关于分辨率被缩放的坑

    问题的产生 因为各方面原因,要用网页做界面,开发一个APP.内核使用的是腾讯的x5内核. 把外壳交给前端和设计测试的时候,都汇报:状态栏的颜色太不搭配了,要求可修改 遂启用了安卓4.4版本开始支持的沉 ...