internal ExtendJsonToken(ExtendJsonTextReader reader, ISerializeSetting setting) { //if(reader.ReadState!=ReadState.Interactive) // throw new ArgumentOutOfRangeException(nameof(reader)); if (reader.Value == null) { Value = string.Empty; } else if (reader.Value is DateTime) { Value = XmlConvert.ToString((DateTime)reader.Value, Convert(setting.Mode)); } else { Value = reader.Value.ToString(); } Depth = reader.Depth; Path = reader.Path; TokenType = reader.TokenType; }
/// <summary> /// 使用指定的 <see cref="TextReader" /> 初始化 <see cref="XmlTextReader" /> 的新实例。 /// </summary> /// <param name="input">包含要读取的 XML 数据的 TextReader。</param> public JsonTextReader(TextReader input) : this() { _reader = new ExtendJsonTextReader(input, _setting); InitReader(); }