String.Format中{0}的含义是什么?

时间:2012-03-08 22:04:25

标签: c# string-formatting

E.g。在以下示例中:

string commandText = string.Format("Select * from {0}", filename);

以上如何运作?

5 个答案:

答案 0 :(得分:6)

{0}是给定第一个对象的占位符;在这种情况下,filename,所以它将插入任何文件名评估代替{0}。同样地,您当然可以使用{1},并将替换为传递的第二个参数等。

答案 1 :(得分:4)

{0}是指传递给String.Format的第二个参数。 {1}指的是第三个,{2}到第四个,等等。例如:

String.Format("The {0} brown {1} jumps {2} the {3} dog.", "quick", "fox", "over", "lazy")

评估到

"The quick brown fox jumps over the lazy dog."

答案 2 :(得分:2)

表示文件名的值。 Please see MSDN.

答案 3 :(得分:1)

它是“Select * from {0}”之后呈现的参数的索引器,也可以与格式说明符结合使用。请参阅String.Format Method的文档。但是,您应该永远不会以这种方式创建SQL命令,因为它容易受到SQL Injection攻击。您应始终参数化SQL查询。请参阅MSDN上的How To: Protect From SQL Injection in ASP.NET文章。

答案 4 :(得分:1)

{0}是对格式字符串后传递的第一个参数的引用。

在您的情况下,"Select * from {0}"是格式字符串,filename是第一个参数。

举个例子:

String.Format("Select * from {0}{1}{0}","this","database")

将返回:

"Select * from thisdatabasethis"