当前位置 : 首页 > 资讯头条 > 网游新闻 > 正文

QTextStream输出流格式化

编辑:迷失传奇版本浏览:814时间:2023-01-06 21:08:44

在项目中,经常需要对输出流进行格式化,那么今天小豆君就给大家介绍下输出流的格式化使用说明。

1设置数字的输出格式

可以使用QTextStream类的setNumberFlags方法,指定数字的输出格式,它的标志位含义介绍如下:

QTextStream::ShowBase指定以哪一种进制进行显示,16("0x"),8("0"),or2("0b")。

QTextStream::ForcePoint如果输出类型是double或float,若这个数字不含小数部分,默认情况下不显示小数部分,若设置了该标志位,则显示小数部分(.)。

QTextStream::ForceSign在输出的数字前面加上正负号,即"+"或"-"。

QTextStream::UppercaseBase在进制指示中,使用大写字母表示,如"0X","0B"。

QTextStream::UppercaseDigits使用大写字母来表示10到35位数字,而不是小写。例如16进制中的a-f都用大写字母表示,或者科学计数法中的e使用大写E。

intmain{QTextStreamout(stdout);inti=60;out.setIntegerBase(16);//设置16进制显示,所以使用输入输出流,也可以很容易的进行进制转换out<

2宽度,填充和对齐方式

2.1宽度

可以调用setFieldWidth来设置输出流的宽度,所谓宽度是指,当在流中输出一个数时,至少产生宽度值所规定数量的字符。如果插入字符的个数小于宽度值,则用某个字符对空余的位置进行填充。

一定注意,这里的宽度是指定输出字符的最小数目,如果数目不够,则使用填充字符进行填充,而不会截断输出。如果你设置宽度为2时输出1234,仍会得到1234。

QTextStream的宽度设置与标准库的有一点不同,它不需要像标准库那样,在每一个输出符前都需要设置一次宽度。

2.2对齐方式

对齐方式一般和宽度一起使用,

QTextStream::AlignLeft左对齐

QTextStream::AlignRight右对齐

QTextStream::AlignCenter居中

QTextStream::AlignAccountingStyle和AlignRight一样,只是数字的符号是左对齐的。

intmain{QTextStreamout(stdout);inti=60;out.setFieldWidth(6);out<

3精度

请看下面的程序:

QTextStreamout(stdout);doubled=12.3456789;out<

此程序预想的输出结果应该是12.3456789,但实际的输出结果是12.3457,那么,是d的值改变了吗。当然没有,因为Q_ASSERT测试为真。

这是因为QTextStream的精度默认设置为6,而如果想要改变它的默认精度,则可以使用setRealNumberPrecision方法。

QTextStreamout(stdout);out.setRealNumberPrecision(10);doubled=12.3456789;out<

好了,关于QTextStream的格式化输出就先介绍到这里。



转载请注明出处:迷失传奇版本 ,如有疑问,请联系(如有侵权内容联系本站管理员 )。

本文地址: https://www.mishipk.com/news/63963.html

相关内容更多
    游戏视频更多
        最新游戏推荐更多