2009-08-29 4 views
23

Я был по всем «трубам», и я не могу понять этого. Может быть, просто.Сбрасывание одиночной кавычки в String.Format()

String.Format Следующая вызов:

return dt.ToString("MMM d yy 'at' H:mmm"); 

Правильно возвращает это:

Сен 23 08 в 12:57

Теперь давайте скажем, я хочу добавить одну цитату перед в год, чтобы вернуть это:

23 сентября '08 в 12:57

Поскольку апостроф является зарезервированным маскирующим, как я избежать одинарные кавычки, чтобы заставить его показывать?

Я пробовал двойные, тройные и квадрантные одинарные кавычки, без везения.

ответ

33

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

return dt.ToString(@"MMM d \'yy 'at' H:mmm"); 

или

return dt.ToString("MMM d \\'yy 'at' H:mmm"); 
+3

в моей защите, я стал загипнотизирован тем, как вам нужно делать {{{чтобы избежать завитушек в 'String.Format()' и временно потерял мой разум .. спасибо! –

+6

О, мужчина! Этот принятый ответ должен перейти к моему резюме сейчас ...; ^) –

+0

В этом случае% символов не нужны, так как% d и% H объединены с другими шаблонами формата. Это делает его немного понятнее без них. –

4

Вы можете просто использовать объект HTML, если он предназначен для HTML.

- Edit

' 

- Редактирование

Просто, чтобы сделать этот пост не так, как и все остальные отметил, спасаясь работает отлично :)

string s = t.ToString("MMM d \\'yy 'at' H:mmm"); 

И это в прошлый раз я не тестировал что-то на основании того, кто размещает :)

+0

+1 для последней строки !!! хорошо сказано!! – aProgrammer

2

Я не люблю C# @ строки, если я действительно не должны использовать их, так что я бы на самом деле пойти с этим.

return dt.ToString("MMM d \\'yy 'at' H:mmm"); 

Это просто предпочтение, для которого вам легче читать.

+2

Попробуйте написать единичный тест, который проверяет класс, который обнаруживает экранированные символы и обрабатывает их. Вы начнете любить @ струн в большой спешке. –

+0

После 5 минут написания регулярных выражений, я тоже начал любить @ струн. :-) –

Смежные вопросы