private static object ReadString(System.IO.TextReader reader) { const string unicodeDoubleQuotes = @"\u0022"; const string doubleQuotes = @""""; const string unicodeBackslash = @"\u005c"; const string backslash = @"\"; reader.EatWhiteSpace(); string stringResult = reader.SeekIgnoreEscaped((char)reader.Read()); reader.Read(); // consume escaped character return(stringResult.Replace(unicodeDoubleQuotes, doubleQuotes) .Replace(unicodeBackslash, backslash) .Replace("u005c", backslash) .Replace("\\\\", "\\")); }