Возможно ли передать спецификатор формата для аргумента в качестве другого аргумента String .Форматировать?

StackOverflow https://stackoverflow.com/questions/1825724

  •  22-07-2019
  •  | 
  •  

Вопрос

Например, допустим, у меня есть строка формата DateTime в строковой переменной, есть ли какой-либо синтаксис или метод в .NET, который позволил бы мне выполнить эквивалент этого недопустимого кода:

String line = String.Format("{0:{1}}", DateTime.Now, dateTimeFormat);
                                ^^^                        ^
                                 |                         |
                                 +-- this would use this --+
Это было полезно?

Решение

Я думаю, что этот обзор синтаксиса в значительной степени исключает динамические параметры.

Вам придется каким-то образом использовать двухэтапную систему, предварительно отформатировав дату или сгенерировав строку форматирования. Но я думаю, что оба будут хуже, чем проблема.

Другие советы

Что плохого в том, чтобы просто

string line = DateTime.Now.ToString(dateTimeFormat);

?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top