このページでは

QJsonArray Class

QJsonArray クラスは、JSON 配列をカプセル化しています。詳細...

ヘッダー: #include <QJsonArray>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core

注:このクラスのすべての関数は再入可能です。

QJsonArray の比較

カテゴリ比較可能な型
等価QJsonArray
等価性QJsonValue.

パブリック型

パブリック関数

QJsonArray()
QJsonArray(std::initializer_list<QJsonValue> args)
QJsonArray(const QJsonArray &other)
QJsonArray(QJsonArray &&other)
~QJsonArray()
void append(const QJsonValue &value)
QJsonValue at(qsizetype i) const
QJsonArray::iterator begin()
QJsonArray::const_iterator begin() const
QJsonArray::const_iterator cbegin() const
QJsonArray::const_iterator cend() const
QJsonArray::const_iterator constBegin() const
QJsonArray::const_iterator constEnd() const
bool contains(const QJsonValue &value) const
qsizetype count() const
bool empty() const
QJsonArray::iterator end()
QJsonArray::const_iterator end() const
QJsonArray::iterator erase(QJsonArray::iterator it)
QJsonValue first() const
QJsonArray::iterator insert(QJsonArray::iterator before, const QJsonValue &value)
void insert(qsizetype i, const QJsonValue &value)
bool isEmpty() const
QJsonValue last() const
void pop_back()
void pop_front()
void prepend(const QJsonValue &value)
void push_back(const QJsonValue &value)
void push_front(const QJsonValue &value)
void removeAt(qsizetype i)
void removeFirst()
void removeLast()
void replace(qsizetype i, const QJsonValue &value)
qsizetype size() const
void swap(QJsonArray &other)
QJsonValue takeAt(qsizetype i)
QVariantList toVariantList() const
QJsonArray operator+(const QJsonValue &value) const
QJsonArray &operator+=(const QJsonValue &value)
QJsonArray &operator<<(const QJsonValue &value)
QJsonArray &operator=(QJsonArray &&other)
QJsonArray &operator=(const QJsonArray &other)
QJsonValueRef operator[](qsizetype i)
QJsonValue operator[](qsizetype i) const

静的パブリックメンバー

QJsonArray fromStringList(const QStringList &list)
QJsonArray fromVariantList(const QVariantList &list)
bool operator!=(const QJsonArray &lhs, const QJsonArray &rhs)
bool operator==(const QJsonArray &lhs, const QJsonArray &rhs)

詳細な説明

JSON配列は値のリストです。このリストは、QJsonValue を配列に挿入したり削除したりすることで操作できます。

QJsonArrayは、QVariantList との間で相互に変換することができます。size()、insert()、removeAt() を使用してエントリ数を照会したり、標準のC++イテレータパターンを使用してその内容を反復処理したりすることができます。

QJsonArray は暗黙的に共有されるクラスであり、変更されていない限り、作成元のドキュメントとデータを共有します。

QJsonDocument を使用することで、配列とテキストベースの JSON との間で相互変換を行うことができます。

Qt における JSON のサポートおよびゲームの保存と読み込みも参照してください 。

メンバ型のドキュメント

QJsonArray::ConstIterator

QJsonArray::const_iterator の Qt スタイルの同義語。

QJsonArray::Iterator

QJsonArray::iterator の Qt スタイルの同義語。

QJsonArray::const_pointer

const `QJsonValue ` 型の `typedef`。STL との互換性を確保するために用意されています。

QJsonArray::const_reference

const `QJsonValue ` に対する typedef。STL との互換性を確保するために用意されています。

QJsonArray::difference_type

qsizetype の typedef。STL との互換性のために提供されています。

QJsonArray::pointer

QJsonValue * の typedef。STL との互換性を確保するために用意されています。

QJsonArray::reference

QJsonValue および & の typedef。STL との互換性を確保するために用意されています。

QJsonArray::size_type

qsizetype の typedef。STL との互換性を確保するために提供されています。

QJsonArray::value_type

QJsonValue の typedef。STL との互換性を確保するために用意されています。

メンバ関数のドキュメント

QJsonArray::QJsonArray()

空の配列を作成します。

QJsonArray::QJsonArray(std::initializer_list<QJsonValue> args)

args の初期化リストに基づいて初期化された配列を作成します。

QJsonArray は、JSON 表記と同様の方法で構築できます。例えば、次のようにします。

QJsonArray array = { 1, 2.2, QString() };

[noexcept] QJsonArray::QJsonArray(const QJsonArray &other)

other のコピーを作成します。

QJsonArray は暗黙的に共有されるため、オブジェクトが変更されない限り、このコピーは浅いコピーとなります。

[noexcept] QJsonArray::QJsonArray(QJsonArray &&other)

other から QJsonArray をムーブコンストラクトで生成します。

[noexcept] QJsonArray::~QJsonArray()

配列を削除します。

void QJsonArray::append(const QJsonValue &value)

配列の末尾に `value ` を挿入します。

prepend() およびinsert()も参照してください 。

QJsonValue QJsonArray::at(qsizetype i) const

インデックスi の値を表す `QJsonValue ` を返します。

i が範囲外の場合、返されるQJsonValue はUndefined となります。

QJsonArray::iterator QJsonArray::begin()

配列の最初の要素を指すSTL形式のイテレータを返します。

constBegin() およびend()も参照してください 。

QJsonArray::const_iterator QJsonArray::begin() const

これはオーバーロードされた関数です。

QJsonArray::const_iterator QJsonArray::cbegin() const

配列の最初の要素を指す、STL 形式のconstイテレータを返します。

begin() およびcend()も参照してください 。

QJsonArray::const_iterator QJsonArray::cend() const

配列の最後の要素の直後に位置する仮想の要素を指す、STL スタイルのconstイテレータを返します。

cbegin() およびend()も参照してください 。

QJsonArray::const_iterator QJsonArray::constBegin() const

配列の最初の要素を指す、STL スタイルのconstイテレータを返します。

begin() およびconstEnd()も参照してください 。

QJsonArray::const_iterator QJsonArray::constEnd() const

配列の最後の要素の直後に位置する仮想の要素を指す、STL スタイルのconstイテレータを返します。

constBegin() およびend()も参照してください 。

bool QJsonArray::contains(const QJsonValue &value) const

配列に `value` が含まれている場合は `true ` を返し、そうでない場合は `false` を返します。

count()も参照してください 。

qsizetype QJsonArray::count() const

size() と同じです。

size()も参照してください 。

bool QJsonArray::empty() const

この関数は、STLとの互換性を確保するために提供されています。isEmpty() と同等であり、配列が空の場合はtrue を返します。

QJsonArray::iterator QJsonArray::end()

配列の最後の要素の直後に位置する仮想の要素を指す、STL スタイルのイテレータを返します。

begin() およびconstEnd()も参照してください 。

QJsonArray::const_iterator QJsonArray::end() const

これはオーバーロードされた関数です。

QJsonArray::iterator QJsonArray::erase(QJsonArray::iterator it)

it が指す要素を削除し、次の要素を指すイテレータを返します。

removeAt()も参照してください 。

QJsonValue QJsonArray::first() const

配列に格納されている最初の値を返します。

at(0) と同じです。

at()も参照してください 。

[static] QJsonArray QJsonArray::fromStringList(const QStringList &list)

文字列リスト `list ` を `QJsonArray` に変換します。

list 内の値は JSON 値に変換されます。

toVariantList() およびQJsonValue::fromVariant()も参照してください 。

[static] QJsonArray QJsonArray::fromVariantList(const QVariantList &list)

バリアントリスト `list ` を `QJsonArray` に変換します。

list 内のQVariant の値は、JSONの値に変換されます。

注: `QVariant ` からの変換は 完全にロスレスではありません。詳細については、QJsonValue::fromVariant() のドキュメントを参照してください。

toVariantList() およびQJsonValue::fromVariant()も参照してください 。

QJsonArray::iterator QJsonArray::insert(QJsonArray::iterator before, const QJsonValue &value)

before が指す位置の直前にvalue を挿入し、新しく挿入された項目を指すイテレータを返します。

erase() およびinsert(qsizetype, const QJsonValue &)も参照してください 。

void QJsonArray::insert(qsizetype i, const QJsonValue &value)

配列のインデックス位置i に `value ` を挿入します。i が `0` の場合、その値は配列の先頭に追加されます。i が `size()` の場合、その値は配列の末尾に追加されます。

append()、prepend()、replace()、およびremoveAt()も参照してください 。

bool QJsonArray::isEmpty() const

オブジェクトが空の場合、true を返します。これは、size() == 0 と同じです。

size()も参照してください 。

QJsonValue QJsonArray::last() const

配列に格納されている最後の値を返します。

at(size() - 1) と同じです。

at()も参照してください 。

void QJsonArray::pop_back()

この関数は、STLとの互換性を確保するために提供されています。これはremoveLast()と同等です。配列は空であってはなりません。配列が空になる可能性がある場合は、この関数を呼び出す前にisEmpty()を呼び出してください。

void QJsonArray::pop_front()

この関数は、STLとの互換性を確保するために提供されています。これはremoveFirst()と同等です。配列は空であってはなりません。配列が空になる可能性がある場合は、この関数を呼び出す前にisEmpty()を呼び出してください。

void QJsonArray::prepend(const QJsonValue &value)

配列の先頭に `value ` を挿入します。

これは `insert(0, value) ` と同じ動作であり、配列の先頭に `value ` を追加します。

append() およびinsert()も参照してください 。

void QJsonArray::push_back(const QJsonValue &value)

この関数は、STLとの互換性を確保するために提供されています。これはappend(value)と同等であり、配列の末尾にvalue を追加します。

void QJsonArray::push_front(const QJsonValue &value)

この関数は、STLとの互換性を確保するために提供されています。これは `prepend(value)` と同等であり、配列の先頭に `value ` を追加します。

void QJsonArray::removeAt(qsizetype i)

インデックス位置i にある値を削除します。i は、配列内の有効なインデックス位置である必要があります(つまり、0 <= i < size() )。

insert() およびreplace()も参照してください 。

void QJsonArray::removeFirst()

配列の先頭要素を削除します。この関数を呼び出すことは、removeAt(0) を呼び出すことと同じです。配列は空であってはなりません。配列が空であってもよい場合は、この関数を呼び出す前にisEmpty()を呼び出してください。

removeAt() およびremoveLast()も参照してください 。

void QJsonArray::removeLast()

配列の最後の要素を削除します。この関数を呼び出すことは、removeAt(size() - 1) を呼び出すことと同じです。配列は空であってはなりません。配列が空になる可能性がある場合は、この関数を呼び出す前にisEmpty()を呼び出してください。

removeAt() およびremoveFirst()も参照してください 。

void QJsonArray::replace(qsizetype i, const QJsonValue &value)

インデックス位置i にある要素を、value に置き換えます。i は、配列内の有効なインデックス位置でなければなりません(つまり、0 <= i < size() )。

operator[]() およびremoveAt()も参照してください 。

qsizetype QJsonArray::size() const

配列に格納されている値の数を返します。

[noexcept] void QJsonArray::swap(QJsonArray &other)

この配列をother と入れ替えます。この操作は非常に高速で、失敗することはありません。

QJsonValue QJsonArray::takeAt(qsizetype i)

インデックス位置i にある要素を削除し、それを返します。i は、配列内の有効なインデックス位置でなければなりません(例:0 <= i < size() )。

戻り値を使用しない場合は、removeAt() の方が効率的です。

removeAt()も参照してください 。

QVariantList QJsonArray::toVariantList() const

このオブジェクトをQVariantList に変換します。

作成されたマップを返します。

QJsonArray QJsonArray::operator+(const QJsonValue &value) const

この配列に含まれるすべての要素と、指定されたvalue を組み合わせた配列を返します。

operator+=()も参照してください 。

QJsonArray &QJsonArray::operator+=(const QJsonValue &value)

value を配列に追加し、その配列への参照を返します。

append() およびoperator<<()も参照してください 。

QJsonArray &QJsonArray::operator<<(const QJsonValue &value)

value を配列に追加し、その配列自体の参照を返します。

operator+=() およびappend()も参照してください 。

[noexcept] QJsonArray &QJsonArray::operator=(QJsonArray &&other)

other をこの配列に代入します。

[noexcept] QJsonArray &QJsonArray::operator=(const QJsonArray &other)

この配列にother を割り当てます。

QJsonValueRef QJsonArray::operator[](qsizetype i)

インデックス位置i にある値を、変更可能な参照として返します。i は、配列内の有効なインデックス位置でなければなりません(つまり、0 <= i < size() )。

戻り値の型は `QJsonValueRef` であり、これは `QJsonArray ` および `QJsonObject` のヘルパークラスです。`QJsonValueRef` 型のオブジェクトを取得した場合、それを `QJsonValue` への参照であるかのように使用できます。これに代入を行うと、その代入は、参照を取得した `QJsonObject ` の `QJsonArray ` にある文字に対して適用されます。

at()も参照してください 。

QJsonValue QJsonArray::operator[](qsizetype i) const

at() と同じです。

これはオーバーロードされた関数です。

関連する非メンバー変数

[noexcept] bool operator!=(const QJsonArray &lhs, const QJsonArray &rhs)

lhs 配列がrhs と等しくない場合はtrue を返し、それ以外の場合はfalse を返します。

[noexcept] bool operator==(const QJsonArray &lhs, const QJsonArray &rhs)

lhs 配列がrhs と等しい場合はtrue を返し、そうでない場合はfalse を返します。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.