Qt学习之路(1)------Qt常用类用法说明
Qt常用类
向控制台输出文本
第一个例子,我们采用STL的方式:
#include <iostream> int main()
{
std::cout << "console application\n";
}
第二个例子我们用QT4编程库
#include <QTextStream> int main()
{
QTextStream out(stdout);
out << "console application\n";
}
Output
console application
QFile
写一行字符串到文件中
#include <QTextStream>
#include <QFile> int main()
{ QFile data("myfile"); if (data.open(QFile::WriteOnly)) {
QTextStream out(&data);
out << "You make me want to be a better man." << endl;
}
}
$ cat myfile
You make me want to be a better man.
下面的例子我们输出一段文本到控制台
S a régi szeretőmér
mit nem cselekednék,
tengerből a vizet
kanállal lemerném. S a tenger fenekéről
apró gyöngyöt szednék,
s a régi szeretőmnek
gyöngykoszorút kötnék.
#include <QTextStream>
#include <QFile> int main()
{
QFile data("szerelem"); QString line; if (data.open(QFile::ReadOnly)) {
QTextStream in(&data);
QTextStream out(stdout); out.setCodec("UTF-8");
in.setCodec("UTF-8"); do {
line = in.readLine();
out << line << endl;
} while (!line.isNull());
}
}
S a régi szeretőmér
mit nem cselekednék,
tengerből a vizet
kanállal lemerném. S a tenger fenekéről
apró gyöngyöt szednék,
s a régi szeretőmnek
gyöngykoszorút kötnék.
QList
Qt容器类之一
#include <QTextStream>
#include <QList> int main()
{
QTextStream out(stdout); QList<QString> list; list << "Balzac" << "Tolstoy" << "Guldbrassen"
<< "London" << "Galsworthy" << "Sienkiewicz"; qSort(list); for (int i = 0; i < list.size(); ++i) {
out << list.at(i) << endl;
} }
Output
Balzac
Galsworthy
Guldbrassen
London
Sienkiewicz
Tolstoy
QDir
管理文件目录
#include <QTextStream>
#include <QDir> int main()
{
QTextStream out(stdout);
QString home = QDir::homePath();
out << home << endl;
}
Output
/home/vronskij
输出应用程序所在路径中扩展名是.c的全部文件名字
#include <QTextStream>
#include <QDir> int main()
{
QTextStream out(stdout);
QDir dir; QStringList filters;
filters << "*.c" << "*.c~";
dir.setNameFilters(filters); QFileInfoList list = dir.entryInfoList(); for (int i = 0; i < list.size(); ++i) {
QFileInfo fileInfo = list.at(i);
out << QString("%1").arg(fileInfo.fileName());
out << endl;
}
}
$ ls -F
anim* anim.c anim.c~ filters*
$ ./filters
anim.c
anim.c~
QTime
输出当前时间
#include <QTextStream>
#include <QTime> int main()
{
QTextStream out(stdout); QTime qtime = QTime::currentTime();
QString stime = qtime.toString(Qt::LocalDate); out << stime << endl;
}
Output
$ ./time
10:30:33 PM
QString
字符串连接
#include <QTextStream> int main()
{
QString a = "Disziplin ";
QString b = "ist ";
QString c = "Macht.\n"; QTextStream out(stdout);
out << a + b + c;
}
$ ./concat
Disziplin ist Macht.
字符串追加
#include <QTextStream> int main()
{ QString string = "Whether I shall "; string.append("turn out to be the hero of my own life, \n");
string.append("or whether that station will be held by anybody else, \n");
string.append("these pages must show.\n"); QTextStream out(stdout);
out << string;
}
$ ./append
Whether I shall turn out to be the hero of my own life,
or whether that station will be held by anybody else,
these pages must show.
参数替换
#include <QTextStream> int main()
{
QString string = "What if I gave you %1 red roses?";
int num = 21; QTextStream out(stdout);
out << string.arg(num) << endl;
}
$ ./str3
What if I gave you 21 red roses?
输出字符串长度
#include <QTextStream> int main()
{
QString string = "The history of my life."; QTextStream out(stdout);
out << "The string has " + QString::number(string.size())
+ " characters." << endl;
}
./size
The string has 23 characters.
字符串大小写转换
#include <QTextStream> int main()
{
QString string = "The history of my life."; QTextStream out(stdout);
out << string.toLower() << endl;
out << string.toUpper() << endl;
}
$ ./uplow
the history of my life.
THE HISTORY OF MY LIFE.
Qt学习之路(1)------Qt常用类用法说明的更多相关文章
- Qt 学习之路 :Qt Quick Controls
自 QML 第一次发布已经过去一年多的时间,但在企业应用领域,QML 一直没有能够占据一定地位.很大一部分原因是,QML 缺少一些在企业应用中亟需的组件,比如按钮.菜单等.虽然移动领域,这些组件已经变 ...
- Qt 学习之路 :Qt 绘制系统简介
Qt 的绘图系统允许使用相同的 API 在屏幕和其它打印设备上进行绘制.整个绘图系统基于QPainter,QPainterDevice和QPaintEngine三个类. QPainter用来执行绘制的 ...
- Qt 学习之路 :Qt 模块简介
Qt 5 与 Qt 4 最大的一个区别之一是底层架构有了修改.Qt 5 引入了模块化的概念,将众多功能细分到几个模块之中.Qt 4 也有模块的概念,但是是一种很粗的划分,而 Qt 5 则更加细化.本节 ...
- Qt 学习之路 :Qt 线程相关类
希望上一章有关事件循环的内容还没有把你绕晕.本章将重新回到有关线程的相关内容上面来.在前面的章节我们了解了有关QThread类的简单使用.不过,Qt 提供的有关线程的类可不那么简单,否则的话我们也没必 ...
- Qt 学习之路:Qt 简介
Qt 是一个著名的 C++ 应用程序框架.你并不能说它只是一个 GUI 库,因为 Qt 十分庞大,并不仅仅是 GUI 组件.使用 Qt,在一定程度上你获得的是一个“一站式”的解决方案:不再需要研究 S ...
- Qt 学习之路 2(73):Qt 线程相关类
Home / Qt 学习之路 2 / Qt 学习之路 2(73):Qt 线程相关类 Qt 学习之路 2(73):Qt 线程相关类 豆子 2013年11月26日 Qt 学习之路 2 7条评论 希 ...
- Qt 学习之路 2(66):访问网络(2)
Home / Qt 学习之路 2 / Qt 学习之路 2(66):访问网络(2) Qt 学习之路 2(66):访问网络(2) 豆子 2013年10月31日 Qt 学习之路 2 27条评论 上一 ...
- Qt 学习之路 2(65):访问网络(1)
Home / Qt 学习之路 2 / Qt 学习之路 2(65):访问网络(1) Qt 学习之路 2(65):访问网络(1) 豆子 2013年10月11日 Qt 学习之路 2 18条评论 现在 ...
- Qt 学习之路 2(44):QFileSystemModel
Home / Qt 学习之路 2 / Qt 学习之路 2(44):QFileSystemModel Qt 学习之路 2(44):QFileSystemModel 豆子 2013年2月21日 Qt ...
- QT学习之路--创建一个对话框
Q_OBJECT:这是一个宏,凡是定义信号槽的类都必须声明这个宏. 函数tr()全名是QObject::tr(),被他处理过的字符串可以使用工具提取出来翻译成其他语言,也就是做国际化使用. 对于QT学 ...
随机推荐
- 九度OJ 1435 迷瘴
题目地址:http://ac.jobdu.com/problem.php?pid=1435 题目描述: 通过悬崖的yifenfei,又面临着幽谷的考验—— 幽谷周围瘴气弥漫,静的可怕,隐约可见地上堆满 ...
- 九度OJ 1433 FatMouse -- 贪心算法
题目地址:http://ac.jobdu.com/problem.php?pid=1433 题目描述: FatMouse prepared M pounds of cat food, ready to ...
- MongoDB笔记(一)MongoDB概述和安装
概述 关键词:关系数据库.非关系数据库 关系数据库: 关系数据库,是建立在关系数据库模型基础上的数据库,借助于集合代数等概念和方法来处理数据库中的数据.目前主流的关系数据库有oracle.SQL.ac ...
- yum --rpm包安装
rpm -ivh package -i 表示安装install -v表示显示详细信息, -vv更详细些 -h表示显示安装进度 --force:表示强制安装 --nodeps:忽略依赖关系安装 --r ...
- 计算字符串和文件的MD5值
//计算字符串的MD5值 public string GetMD5(string sDataIn) { MD5CryptoServiceProvider md5 = new MD5CryptoServ ...
- 【javascript 引用类型(一)】
javascript 的引用类型大致分为:Object 类型.Array 类型.Date 类型.RegExp 类型.Function 类型.基本包装类型和单体内置对象.这里我们着重介绍 Object ...
- 基于u-boot源码的简单shell软件实现
一.概述 1.shell概念 Shell(命令解析器),它用于接收用户输入的命令,进行解析,然后调用相应的应用程序,为使用者提供了使用软件的界面. shell是操作系统最外面的一层.shell管理你与 ...
- Github readme语法-- markdown
README 该文件用来测试和展示书写README的各种markdown语法.GitHub的markdown语法在标准的markdown语法基础上做了扩充,称之为GitHub Flavored Mar ...
- iOS开发者计划(转)
苹果对软件和开发者的管理十分严格,你只有加入了Apple Developer计划之后,才能将你的软件放到真机上运行或者发布到App Store上去.这种方法看似麻烦,但是却有效的解决了盗版和劣质软件充 ...
- Case When PK PIVOT
SELECT *FROM ScoreInfogo Name Course Score---------- ---------- -----------Lucy Chinese 74Jim Math 8 ...