2013-02-19 21 views
111

मेरे कोड में परिवर्तित सूची के रूप में नीचे है:अल्पविराम से अलग स्ट्रिंग

public void ReadListItem() 
{ 
    List<uint> lst = new List<uint>() { 1, 2, 3, 4, 5 }; 
    string str = string.Empty; 
    foreach (var item in lst) 
     str = str + item + ","; 

    str = str.Remove(str.Length - 1); 
    Console.WriteLine(str); 
} 

आउटपुट: 1,2,3,4,5

अल्पविराम से अलग की स्ट्रिंग में List<uint> कन्वर्ट करने के लिए सबसे आसान तरीका क्या है?

+6

'स्ट्रिंग.जॉइन' आपको बस चाहिए। – asawyer

+6

'var csvString = स्ट्रिंग। जॉइन (", ", lst); 'इसे करना चाहिए। – Mithrandir

+2

कोई भी जो इसे फिर से खोलना चाहता है, यदि यह बहुत स्थानीयकृत नहीं है तो यह एक डुप्लिकेट है: http://stackoverflow.com/questions/799446/creating-a-comma-separated-list-from-iliststring-or-ienumerablestring –

उत्तर

199

आनंद लें!

Console.WriteLine(String.Join(",", new List<uint> { 1, 2, 3, 4, 5 })); 

String.Join एक दूसरे पैरामीटर के रूप में एक सूची लेने के लिए और स्ट्रिंग एक एकल स्ट्रिंग में पहले पैरामीटर के रूप में पारित का उपयोग कर सभी तत्वों के शामिल हो जाएगा।

+9

इन। नेट 3.5 और नीचे आपको अपनी सूची को 'lst.ToArray()' के साथ स्पष्ट रूप से सरणी में परिवर्तित करना होगा, क्योंकि अभी तक कोई प्रत्यक्ष अधिभार नहीं है। – Anton

53

आप आइटम गठबंधन करने के लिए String.Join विधि का उपयोग कर सकते हैं:

var str = String.Join(",", lst); 
23

LinqAggregation

lst .Aggregate((a, x) => a + "," + x); 
+1

मेरे पास int32 प्रकार की सूची है। जब मैं आपके द्वारा उल्लिखित कुल फ़ंक्शन का उपयोग करता हूं, तो यह कहता है, "लैम्ब्डा अभिव्यक्ति को प्रतिनिधि प्रकार में परिवर्तित नहीं किया जा सकता है 'System.Func ' क्योंकि ब्लॉक में कुछ रिटर्न प्रकार प्रतिनिधि वापसी प्रकार के लिए पूरी तरह से परिवर्तनीय नहीं हैं" और \t "अंतर्निहित रूप से रूपांतरित नहीं कर सकते 'स्ट्रिंग' से 'int' ' – Hari

+1

@ हरि आपको स्ट्रिंग मानों में स्ट्रिंग मानों में कनवर्ट करने से पहले इसे परिवर्तित करना होगा। तो आप इस तरह कुछ कर सकते हैं: सूची। चयन करें (x => string.Format ("{0}: {1}", x.Key, x.Value))। कुल ((ए, एक्स) => ए + " , "+ एक्स); – bets

1

का उपयोग String.Join

string.Join<string>(",", lst); 

का उपयोग का प्रयास करें

Console.WriteLine((string.Join(",", lst.Select(x=>x.ToString()).ToArray()))); 

HTH

8

इस का पालन करें:

 List<string> name = new List<string>(); 

     name.Add("Latif"); 
     name.Add("Ram"); 
     name.Add("Adam"); 
     string nameOfString = (string.Join(",", name.Select(x => x.ToString()).ToArray())); 
2
  @{ var result = string.Join(",", @user.UserRoles.Select(x => x.Role.RoleName)); 
       @result 

      } 

मैं मूल्यांकन करें और प्रिंट करने के लिए सभी भूमिकाओं अल्पविराम के द्वारा अलग MVC उस्तरा दृश्य में इस्तेमाल किया।

0

आप google-collections.jar जो योजक नामक एक उपयोगिता वर्ग है का उपयोग कर सकते

String commaSepString=Joiner.on(",").join(lst); 

या

आप StringUtils वर्ग जो समारोह join.To StringUtils वर्ग का उपयोग करने का आह्वान किया है उपयोग कर सकते हैं , आप संदर्भ के लिए आम-lang3.jar

String commaSepString=StringUtils.join(lst, ','); 

उपयोग करने के लिए, का उल्लेख इस लिंक http://techno-terminal.blogspot.in/2015/08/convert-collection-into-comma-separated.html

की जरूरत
2

आप सूची से अल्पविराम से अलग स्ट्रिंग सरणी प्राप्त करने के लिए नीचे दिए गए उदाहरण का उल्लेख कर सकते हैं।

उदाहरण:

List<string> testList= new List<string>(); 
testList.Add("Apple"); // Add string 1 
testList.Add("Banana"); // 2 
testList.Add("Mango"); // 3 
testList.Add("Blue Berry"); // 4 
testList.Add("Water Melon"); // 5 

string JoinDataString = string.Join(",", testList.ToArray()); 
1

अगर आप नेट ढांचे> 4.0 का उपयोग कर रहे हैं आप इस के लिए String.Join उपयोग कर सकते हैं।

var result= String.Join(",", yourList); 
1

आप ints का एक संग्रह है, तो हम अल्पविराम

string stations = 
haul.Routes != null && haul.Routes.Count > 0 ?String.Join(",",haul.Routes.Select(y => 
y.RouteCode).ToList()) : string.Empty; 
0
static void Main(string[] args){   
List<string> listStrings = new List<string>() { "C#", "Asp.Net", "SQL Server", "PHP", "Angular" }; 
string CommaSeparateString = GenerateCommaSeparateStringFromList(listStrings); 
Console.Write(CommaSeparateString); 
Console.ReadKey();} 
private static string GenerateCommaSeparateStringFromList(List<string> listStrings){return String.Join(",", listStrings);} 

Convert a list of string to comma separated string C#

4

द्वारा अलग-अलग सूची enties को इस तरह की कोशिश कर सकते हैं:

List<int> customerIds= new List<int>() { 1,2,3,3,4,5,6,7,8,9 }; 

आप स्ट्रिंग प्राप्त करने के लिए string.Join का उपयोग कर सकते हैं:

var result = String.Join(",", customerIds); 
संबंधित मुद्दे