c# - Reading from a csv file and processing it in .net -


i have csv file 2 rows in it.

 a,1  b,2 

i want read file in format , convert following format:

name : a, id: 1 name : b, id: 2 

i using following .net api

using (filestream reader = file.openread(@"data.csv")) // mind encoding - utf8             using (textfieldparser parser = new textfieldparser(reader))             {                 parser.trimwhitespace = true; // if want                 parser.delimiters = new[] { "," };                 parser.hasfieldsenclosedinquotes = true;                 while (!parser.endofdata)                 {                     string[] line = parser.readfields();                      list<string> li = line.selectmany(x => x.split(',')).tolist();                   }             } 

in li variable , able individual elements after splitting eg: 1, not getting how add key attribute it, make name : a, id : 1

edit :

i need in list format easy separate entities based on eg:

list{     list1 = name : a,id:1     list2 = name : b,id:2 } 

i'd create struct :

struct valuepair {     public string name  { get; set; }     public string id { get; set; }              public valuepair(string name, string id) : this()     {         name = name;         id = id;     }      public override string tostring()     {         return "name : " + name + ", id : " + id;     } } 

and in code can use it:

list<valuepair> data = new list<valuepair>(); for(int = 0; < li.count; += 2)     data.add(new valuepair(li[i], li[i + 1])); 

then use data[i].tostring();


Comments