【问题标题】:use format string from a property使用属性中的格式字符串
【发布时间】:2016-03-23 10:26:39
【问题描述】:

我现在的情况如下:

我有一个如下所示的内插字符串:

DateTime DateOfSmth;
string PlaceOfSmth;
$"{DateOfSmth}, {PlaceOfSmth}".Trim(' ',',');

以及应该在其上使用的格式:

string Format = "{0:dd.MM.yyyy}";

现在我想在插值字符串中使用属性Format中的格式,但我不知道如何。

I.E:我想要这样的结果:

$"{DateOfSmth:Format}, {PlaceOfSmth}".Trim(' ',',');

有人可以帮忙吗?

【问题讨论】:

  • 你可以这样做 Console.WriteLine($"Name = {name}, hours = {hours:hh}") 更多细节请访问msdn.microsoft.com/en-us/library/dn961160.aspx
  • 感谢您的链接。在发布问题之前,我已经研究过了。我需要它的真正原因是我需要使用来自Format 属性的格式化字符串。而不是直接写到字符串中。

标签: c# c#-6.0


【解决方案1】:

试试这个:

string format = "dd.MM.yyyy";
Console.WriteLine($"{DateOfSmth.ToString(format)}");

【讨论】:

  • 最后我使用了一些类似的东西。因为格式字符串有内容{0:dd.MM.yyyy} 我不能直接使用你的答案,但这有很大帮助。谢谢:)
  • 只是为了澄清 - 给出了格式字符串,我无法更改它。
【解决方案2】:

最后,我将接受的答案留给了@diiN_。我使用的解决方案是:

//this format is given and I can't change it
string Format = "{0:dd.MM.yyyy}";
DateTime? Date = DateTime.Today;
string Place = "Washington";

string.Format(Format + ", {1}", Date, Place);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-08-30
    • 2019-11-14
    • 1970-01-01
    • 2011-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-01
    相关资源
    最近更新 更多