- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
有一个关于打印带有千位/百万位分隔符的整数的问题。
我有一个文本文件,其中包含国家、城市和总人口。
我必须阅读文件,并按国家排序。如果国家/地区是平等的,我必须按人口降序排序。
文本文件是这样的:
澳大利亚........悉尼.......10.123.456
巴西.............圣保罗.......7.123.345
我将所有 3 个读入一个单独的字符串。然后我删除所有“。”在人口字符串中。然后我使用 atoi() 将人口字符串转换为整数。
现在,如果国家/地区相等,我可以按人口排序。这种排序工作正常。
到目前为止一切顺利。但我需要将千/百万分隔符放入人口的打印中。
如果我使用字符串,带有“.”对于人口,排序不能正常工作。它的排序如下:
x.......x......1.123456
x.......x......10.123.456
x.......x......2.123.232
它必须看起来像:
澳大利亚........悉尼.......10.123.456
澳大利亚........布里斯类.......8.123.456
有没有办法通过再次在 int 中添加分隔符来操纵打印?
非常感谢
最佳答案
imbue()
带有 locale 的输出流具有所需的分隔符。例如:
#include <iostream>
#include <locale>
int main()
{
// imbue the output stream with a locale.
int i = 45749785;
std::cout << i << "\n";
std::cout.imbue(std::locale(""));
std::cout << i << "\n";
}
我机器上的输出(和 online demo ):
4574978545,749,785
正如 James Kanze 评论和回答的那样灌输输入流也可以读取分离的 int
值,而无需手动修改输入。
参见 Stroustrop 的 Appendix D: Locales以获得语言环境的详细概述。
关于c++ - 打印带有千位和百万位分隔符的整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17530408/
我正在使用报表查看器控件 (rdlc) 生成报表。我的一列表示来自 SQL 数据库的十进制值,例如: 5199.9800 在此列的末尾,汇总了所有金额。因此,金额行以这种方式表示: =Fields!
我在这段代码中尝试用以下模式替换引号 (') 的千位分隔符 (.):###'###,## import java.text.*; public class NumberFormatTests
对于具有财务计算的网站,我尝试将包含在 HTML 输入字段中的每个数字转换为 xxx,xxx,xxx.xx 格式,其中千位分隔符为逗号,小数点为小数点。与我们从 Excel 中了解到的类似。 现在是挑
有没有一种方法可以使用字符串格式化程序将 Thousands、Millions、Billions 格式化为 123K、123M、123B 而无需更改代码以将值除以 Thousand、Million 或
我是一名优秀的程序员,十分优秀!