c# - Reformat string to be comma separated and formatted -


i have list of strings...

var strings = new list<string>() { "a", "b", "c" }; 

i want output them in different format, this:

'a','b','c'

i've tried :

string.join("','",strings ); 

and

string.join(",", string.format("'{0}'",strings ) 

your first attempt should work, need prefix , suffix overall result "'".

or, do:

var strings = new list<string>() { "a", "b", "c" }                   .select(x => string.format("'{0}'", x));  var result = string.join(",", strings); 

another option use stringbuilder instead,

var strings = new list<string>() { "a", "b", "c" }; var builder = new stringbuilder();  foreach (var s in strings) {     builder.appendformat(",'{0}'", s); }  var result = builder.tostring().trim(","); 

in case i'd recommend linq approach it's simplicity, don't rule out stringbuilder if real problem more complex, can show intent of formatting of each individual item more cleanly.

a hybrid approach format content of each item using stringbuilder, build comma-separated list using linq afterwards, work well.


Comments

Popular posts from this blog

javascript - Slick Slider width recalculation -

jsf - PrimeFaces Datatable - What is f:facet actually doing? -

angular2 services - Angular 2 RC 4 Http post not firing -