JsonArray 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示 JSON 数组。
JsonArray 继承 IVector (IJsonValue) 和 IIterable (IJsonValue) 接口,这些接口提供循环访问数组中的元素并更新其内容的方法。
public ref class JsonArray sealed : IIterable<IJsonValue ^>, IVector<IJsonValue ^>, IStringable
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class JsonArray final : IIterable<IJsonValue>, IVector<IJsonValue>, IStringable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class JsonArray final : IIterable<IJsonValue>, IVector<IJsonValue>, IStringable
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class JsonArray : IEnumerable<IJsonValue>, IList<IJsonValue>, IStringable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class JsonArray : IEnumerable<IJsonValue>, IList<IJsonValue>, IStringable
Public NotInheritable Class JsonArray
Implements IEnumerable(Of IJsonValue), IList(Of IJsonValue), IStringable
- 继承
- 属性
- 实现
Windows 要求
设备系列 |
Windows 10 (在 10.0.10240.0 中引入)
|
API contract |
Windows.Foundation.UniversalApiContract (在 v1.0 中引入)
|
注解
有关如何使用这些类方法分析 JSON 字符串中的数组并将其转换为 JsonArray 对象、更新数组包含的值,然后将更新后的 JsonArray 对象序列化为 JSON 字符串的示例,请参阅 使用 javaScript 对象表示法 (JSON) 。
枚举 C# 或 Microsoft Visual Basic 中的集合
JsonArray 是可枚举的,因此可以使用特定于语言的语法(如 C# 中的 foreach )枚举集合中的项。 编译器为你执行类型强制转换,你无需显式转换为 IEnumerable<IJsonValue>
。 如果需要显式强制转换(例如,如果要调用 GetEnumerator),请使用 IJsonValue 约束强制转换为 IEnumerable<T>。
构造函数
JsonArray() |
创建表示 JSON 数组的新 JsonArray 对象。 |
属性
Size |
获取数组的大小 (计数) 。 |
ValueType |
获取数组中值的类型。 可能的类型由 JsonValueType 定义。 |
方法
Append(IJsonValue) |
向数组添加新项。 |
Clear() |
从集合中移除所有项。 |
First() |
返回对数组中的项进行迭代的迭代器。 |
GetArray() | |
GetArrayAt(UInt32) | |
GetAt(UInt32) |
返回位于指定索引处的项。 |
GetBoolean() | |
GetBooleanAt(UInt32) | |
GetMany(UInt32, IJsonValue[]) |
从指定的索引开始,获取 IJsonValue 类型的所有数组项。 |
GetNumber() | |
GetNumberAt(UInt32) | |
GetObject() |
如果封装值的 ValueType 为 Object,则获取 JsonObject。 |
GetObjectAt(UInt32) |
如果封装值的 ValueType 为 Object,则获取指定索引处的 JsonObject。 |
GetString() | |
GetStringAt(UInt32) | |
GetView() |
获取 JsonArray 视图。 |
IndexOf(IJsonValue, UInt32) | |
InsertAt(UInt32, IJsonValue) |
将 JsonValue 插入到位于指定索引处的数组中。 |
Parse(String) |
分析表示 JsonArray 的指定 JSON 字符串。 注意 如果提供的 JSON 字符串无效,此方法将引发异常。 建议使用 JsonObject.TryParse 。 TryParse 调用将返回一个布尔值,指示成功或失败,如果成功,则返回生成的 JsonArray。 |
RemoveAt(UInt32) |
删除集合中指定索引处的元素。 |
RemoveAtEnd() |
删除数组中的最后一项。 |
ReplaceAll(IJsonValue[]) |
清除数组,然后将提供的 JsonValue 对象集合作为新数组项插入。 |
SetAt(UInt32, IJsonValue) |
使用提供的 JsonValue 在指定索引处设置值。 |
Stringify() |
返回封装值的 JSON 表示形式。 |
ToString() |
返回封装值的 JSON 表示形式。 |
TryParse(String, JsonArray) |
将提供的字符串分析为 JsonArray。 |