2012-12-03 149 views
-1

我是C#的新手。任何人都可以解释以下行:C# - String.Format()

 string value = ""; 
     string tempValue = "=Fields!{0}.Value"; 


     value = RemoveSpace(ReportDataTable.Columns[i].ColumnName); 
     value = String.Format(tempValue, value); 
+0

你的意思是哪一行? :) –

+1

'string.format()'的文档可以在这里找到:http://msdn.microsoft.com/en-us/library/system.string.format.aspx – Curt

+0

http://www.dotnetperls.com/string-format –

回答

1

你在字符串格式格式化value根据tempValue格式,其中{0}占位
更多信息see this

+0

谢谢。 在第3行,'value'得到一些值。 在第4行,'价值'格式根据'tempvalue' 在第5行,如何得到在第5行保存的值? – user1010399

+0

@ user1010399:假设你有另一个字符串s,那么s =值 –

+0

@ user1010399:简单地使用该值 –

5

您需要了解string.Format它用相应对象值的文本替换指定字符串中的每个格式项。

RemoveSpace将像Trim()一些方法来删除字符串周围的空间。

1

我假设你要解释这一行:

value = String.Format(tempValue, value); 

String.Format创建了一个从模式和值的字符串。它是C#语言中的一种静态方法。它接收一个格式字符串,该字符串指定下列参数应插入的位置。格式字符串使用替代标记。

因此string.Format将用您的值替换此字符串"=Fields!{0}.Value"中的“{0}”。

附注:您可以(应该)总是先咨询MSDN。只需在google中输入方法,第一个链接可能就是文档。

+0

谢谢@Tim。正如你所解释的,我在第4行有问题。在第4行中,“值”应该包含一个字符串值“myValue”,我想比较这个值,例如'if(value ==“myValue”)'它应该返回'true',但是不能这样做。 – user1010399

+0

@ user1010399您正在为第三行中的“值”分配不同的值。 –

+0

在第三行,它从每次都不同的XML文件读取。 – user1010399