यहाँ एक है उपयोगिता विधि का आप उपयोग कर सकते हैं:
public static string CombinePaths(string path1, params string[] paths)
{
if (path1 == null)
{
throw new ArgumentNullException("path1");
}
if (paths == null)
{
throw new ArgumentNullException("paths");
}
return paths.Aggregate(path1, (acc, p) => Path.Combine(acc, p));
}
वैकल्पिक कोड गोल्फ संस्करण (छोटे, लेकिन काफी के रूप में स्पष्ट नहीं, अर्थ विज्ञान Path.Combine
से थोड़ा अलग हैं):
public static string CombinePaths(params string[] paths)
{
if (paths == null)
{
throw new ArgumentNullException("paths");
}
return paths.Aggregate(Path.Combine);
}
तो फिर तुम के रूप में इस कॉल कर सकते हैं:
string path = CombinePaths(path1, path2, path3);
एकल सरणी को और अधिक कुशल घोषित नहीं करना चाहिए, फिर 4 अलग-अलग चर घोषित करना चाहिए? 4 या 3 स्ट्रिंग अधिभार के कारण क्या हो सकता है? –
@ हसन: नहीं, एक सरणी बनाने के लिए एक अलग वस्तु की आवश्यकता होती है जिसे बाद में एकत्रित कचरा होना चाहिए। दो अलग-अलग चरों को पास करना दो संदर्भों वाले एक नए सरणी बनाने से अधिक कुशल है। –
प्रतीक्षा करने की कोई आवश्यकता नहीं है, इसे 10/21/09 से लागू किया गया है :) http://anonsvn.mono-project.com/viewvc?view=revision&revision=144597 –