C#字符串插值,格式可变

我需要使用字符串插值格式化变量,格式字符串是另一个变量:

这是我的示例代码

static void Main(string[] args)
{
    int i = 12345;

    Console.WriteLine($"Test 1: {i:N5}");

    var formatString = "N5";

    Console.WriteLine($"Test 2: {i:formatString}");
}

测试1工作,测试2不起作用.

测试2的确切语法是什么?

解决方法

您的代码相当于:
Console.WriteLine(String.Format("Test 2: {0:formatString}",i));

由于formatString是格式字符串,您将嵌套String.Format调用以将值放入格式字符串中:

Console.WriteLine(String.Format(String.Format("Test 2: {{0:{0}}}",formatstring),i));

字符串插值不支持功能.

相关文章

原文地址:http://msdn.microsoft.com/en-us/magazine/cc163...
前言 随着近些年微服务的流行,有越来越多的开发者和团队所采...
最近因为比较忙,好久没有写博客了,这篇主要给大家分享一下...
在多核CPU在今天和不久的将来,计算机将拥有更多的内核,Mic...
c语言输入成绩怎么判断等级
字符型数据在内存中的存储形式是什么