Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to use Json.NET StringEscapeHandling.EscapeNonAscii [duplicate]

Possible Duplicate:
Using StringEscapeHandling.EscapeNonAscii with Json.NET

The latest release of Json.NET (4.5.11) contains StringEscapeHandling.EscapeNonAscii, which escapes all non ASCII chars. But, I can't figure out how to use it. The docs don't seem to have any examples that I can find (only a release note announcing it).

Could someone show an example of serializing an object into a JSON string, using EscapeNonAscii?

like image 292
SRobertJames Avatar asked Dec 31 '12 23:12

SRobertJames


1 Answers

Maybe this example can help

string obj = "abcn\n\rüö&/<>";
Console.WriteLine(Serialize(obj, StringEscapeHandling.Default));
Console.WriteLine(Serialize(obj, StringEscapeHandling.EscapeHtml));
Console.WriteLine(Serialize(obj, StringEscapeHandling.EscapeNonAscii));

public static string Serialize(object o,StringEscapeHandling stringEscapeHandling)
{
    StringWriter wr = new StringWriter();
    var jsonWriter = new JsonTextWriter(wr);
    jsonWriter.StringEscapeHandling = stringEscapeHandling;
    new JsonSerializer().Serialize(jsonWriter,o);
    return wr.ToString();
}
like image 121
I4V Avatar answered Sep 28 '22 06:09

I4V