#include "countryfactory.h" #include #include #include #include #include "country.h" QList CountryFactory::loadFromJson(QString filename) { QFile file(filename); file.open(QIODevice::ReadOnly); QByteArray data = file.readAll(); QJsonDocument doc(QJsonDocument::fromJson(data)); QJsonValue objet = doc["countries"]; QJsonArray liste = objet["country"].toArray(); QList countries; for ( QJsonValue value : liste) { countries.push_back(new Country( value["name"].toString(), value["capital"].toString(), value["@iso"].toString(), value["region"].toString(), value["alt"].toString() )); } return countries; }