CSVQuoted

public static string CSVQuoted( this string s )
{
    if ( s.IndexOfAny(" ,\n".ToCharArray()) < 0 && s.Trim() == s )
        return s;

    StringBuilder sb = new StringBuilder();
    sb.Append( '"' );
    foreach ( char c in s )
    {
        sb.Append(c);
        if ( c == '"' )
            sb.Append(c);
    }
    sb.Append( '"' );
    return sb.ToString();
}
Example:
"this".CSVQuoted()  ==>  "this"
"pots and pans".CSVQuoted() ==> "\"pots and pans\""
"blue,red".CSVQuoted() ==> "\"blue,red\""
"embedded\"quote".CSVQuoted() ==> "\"embedded\"\"quote\""
" goodbye! ".CSVQuoted() ==> "\" goodbye! \""

Description

If a string contains a space or a comma or a newline, quotes it, suitable for a field in a CSV file.

Details

Double click on the code to select all.

 

;