2012-12-03 102 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