QString 使用 -- 输出, 数字 字符串 转换等

来源:互联网 发布:免费人才测评软件 编辑:程序博客网 时间:2024/06/05 15:24

使用QT的QString 一时还不习惯,总结了一下QString 的一些基本操作,例如QString的控制台输出, QString 数值 转换,


所有SU_DEBUG可以看作printf函数的名字

1. QString的printf输出

由于printf只能接受 const char * 类型, QString 需要使用ToAscii转换为 QByteArray后,获取其data,再传给printf

static voidTest_Print()
{
    QString str("hello");
    SU_DEBUG(str.toAscii().constData());
}

QT一般不建议使用printf输出

1. Qstring 格式化字符串输出

QString使用arg来支持格式化字符串,与C# 或者JAVA使用的占位符相似,因为是强类型的替换,通过重载的arg函数可以知道传入参数的类型

static voidTest_FormatString()

{
    QString fmt("%1 %2");
    QString str = fmt.arg(10).arg(20);
    SU_DEBUG(str.toAscii().constData());
}

2. 数值到Qstring  的转换

有两种,一种是静态方法直接返回新字串 QString::Number,另外一种是QString的成员函数setNum,返回引用

static voidTest_Number2String()

{
    QString str;
    str.setNum(100);
    SU_DEBUG(str.toAscii().constData());
    str = QString::number(200);
    SU_DEBUG(str.toAscii().constData());
}

3. QString 到数值的转换

           成员函数直接输出

static voidTest_String2Number()

{
    QString str("100");
    SU_DEBUG("QString [%s] to int [%d]",str.toAscii().constData(), str.toInt());
}

原创粉丝点击