2010-04-29 181 views
0

HI, 我想動態地使用C#連接字符串。我在XML文件中有本地化的字符串,這個字符串我想在運行時根據語言選擇進行更新。
下面我指定了輸入字符串和期望的輸出字符串格式。字符串連接

EX: 
    *Input String:* 
     "The density of your %s gas at reference conditions of %s %s and %s %s is:" 
    *Expected Output String:* 
    "The density of your Helium gas at reference conditions of 20.01 g and 15.12 Kg is:" 

感謝

+1

也許你想用'{0}','{1}'等等,而不是'%s'。 – kennytm 2010-04-29 17:28:10

+0

這對我來說非常有用。謝謝 – Ravi 2010-04-30 05:49:02

+1

也許現在是時候接受至少幾個問題的答案了? – Alex 2010-04-30 14:53:17

回答

6

您正在尋找string.Format

string output = string.Format(
"The density of your {0} gas at reference conditions of {1} {2} and {3} {4} is:", 
    gas, condition1, condition2, condition3, condition 4); 

不像C的printf功能,這依賴於在他們將取代該命令所提供的參數,string.Format要求您明確指出哪些參數去哪裏。換句話說,{0}意味着第一個(0-索引)參數將在那裏被替換。

您可以選擇指定格式字符串(對數字和日期等有用),如下所示:{1:0.00}。這意味着第二個(索引1)元素的格式字符串爲"0.00"(無論這可能意味着什麼類型的問題)。

+0

這對我來說非常有用。謝謝 – Ravi 2010-04-30 05:53:48

+0

@Ravi:如果這解決了你的問題,請務必接受這個答案。你也可以考慮回到你的一些老問題上,併爲這些問題做出答案。 – 2010-04-30 12:57:17

0
string output = "The density of your " + gas.ToString() + " gas at reference conditions of " + weightG.ToSTring() + "g and " + weightKg.ToSTring() + " Kg is:"; 
+1

這究竟是如何與本地化的字符串存儲在一個XML文件? – cjk 2010-04-29 17:46:00