c#有一个String.Format方法,允许您格式化字符串,但插入带有标记{0}
{1}
我正在尝试创建一个简单的json字符串,它需要在字符串中使用大括号,因此它会破坏格式化程序
String.Format("{ foo:'{0}', bar:'{1}' }", foo, bar);
在大括号之前添加转义没有帮助
抛出异常,说我的字符串格式不正确,有人知道怎么解决这个问题吗?
答案 0 :(得分:46)
你可以通过在格式字符串中将它们加倍来逃避括号:
string.Format("{{ foo: '{0}', bar: '{1}' }}", foo, bar);
答案 1 :(得分:11)
您可以简单地使用{{
或}}
来逃避大括号。
Console.WriteLine(String.Format("{0}, {1}, {{{2}}}", "Moe", "Larry", "Curly"));
产生
Moe,Larry,{Curly}