C# .Net中String.Format方法之控制字符串间距

示例

int[] years = { 2013, 2014, 2015 };
int[] population = { 1025632, 1105967, 1148203 };
var sb = new System.Text.StringBuilder();
sb.Append(String.Format("{0,6} {1,15}\n\n", "Year", "Population"));
for (int index = 0; index < years.Length; index++)
sb.Append(String.Format("{0,6} {1,15:N0}\n", years[index], population[index]));

Console.WriteLine(sb);

// Result:
//      Year      Population
//
//      2013       1,025,632
//      2014       1,105,967
//      2015       1,148,203

说明

1、使用String.Fromat方法控制字符串输出间距常用重载有Format(String, Object0,Object1...)Format(String, Object[])

2、Format是静态方法,故直接通过 String.Format直接调用;

3、参数中String是一组中括号括起来的使用逗号分隔的2个数字,第一位是索引号从零开始,第二位是字符串宽度,正数代表右对齐,负数代表左对齐,可按照如下所示格式定义:

string columnWidth = "{0,-20} {1,-5} {2,-10} {3,-5} {4,-20} {5,-5} {6,-10} {7,5} {8,10} {9,5} {10,10}" + 
                     "{11,5}{12,15} {13,5} {14,10} {15,5} {16,10}";

4、参数Object0,Object1...Object[]可以是多个使用逗号分隔的字符串或Object类型的数组,示例中使用的是多个字符串,Object数组示例String.Format(columnWidth, lsItem.ToArray()),lstItem是字符串类型的list,此处通过ToArray将它转换为数组使用;

posted @   dsmilely  阅读(789)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示
主题色彩