コード例 #1
0
        private JsonToken ReadQuotedString()
        {
            Expect('"', "quoted string indicator");

            reader.Next(); // Read '"' (Starting quote)

            // Read until we reach an unescaped quote char
            while (reader.Current != '"')
            {
                EnsureNotEof("quoted string");

                if (reader.Current == '\\')
                {
                    char escapedCharacter = reader.ReadEscapeCode();

                    sb.Append(escapedCharacter);

                    continue;
                }

                StoreCurrentCharacterAndReadNext();
            }

            reader.Next(); // Read '"' (Ending quote)

            return(new JsonToken(TokenKind.String, value: sb.Extract()));
        }