qt json 예제

이 예제에서는 매우 간단하고 인증이 필요하지 않기 때문에 REST API를 사용하기로 결정했습니다. 나는 또한 나 자신과 지역 사회의 일원이고 나는 데스크톱 리더를 만드는 것이 좋을 것이라고 생각했지만, 그 부차적인 이유였다. 이 예제에서는 JSON 및 바이너리 형식에서 간단한 게임을 저장하고 로드하는 방법을 보여 줍니다. loadGame()에서 저장된 게임을 로드할 때 가장 먼저 하는 일은 저장 된 형식에 따라 저장 파일을 여는 것입니다. JSON에 대한 “save.json”과 바이너리에 대한 “save.dat”. 파일을 열 수 없는 경우 경고를 인쇄하고 false를 반환합니다. JSON 데이터 형식에 대한 자세한 내용은 json.org RFC-4627에서 확인할 수 있습니다. qt-json/qt-json의 새 릴리스에 대한 알림을 원하십니까? 이전 예제를 다시 작성하는 이 예제를 살펴보십시오: JSON 읽기 및 쓰기 예제에서는 libbbdata 라이브러리에서 JsonDataAccess 클래스를 사용하여 JSON 서식이 지정된 데이터와 표준 Qt 값 유형 간에 변환하는 방법을 보여 주어 있습니다. 위의 예제는 5개의 키/값 쌍이 있는 개체로 구성됩니다. 두 값은 문자열이고, 하나는 숫자이고, 하나는 다른 개체이고 마지막 값은 배열입니다. qt-json 프로젝트는 QVariant 계층 구조에서 JSON 데이터를 구문 분석하고 직렬화하기 위한 간단한 함수 모음입니다. 맨 위(루트) JSON 요소는 배열 또는 개체여야 합니다. JSON 형식 설명은 http://www.json.org/ 참조하십시오.

Qt5를 사용하면 Qt에서 JSON 파일을 읽고 쓸 수있는 새로운 API가 있습니다. 마지막 날에 나는이 API를 가지고 놀 수있는 기회를 가졌는데, 나는 JSON에서 다른 데이터 세트를 가져 와서 내보내기를 구현했다. Qt는 설명서에서 JSON에 대한 매우 좋은 시작 페이지를 가지고 있으며, 이미 JSON 파일에 대한 데이터의 저장 및 로드를 보여주는 예제를 가지고 있습니다. 그것은 우리의 모범을 결론지습니다. 보시다시피 Qt의 JSON 클래스를 사용하면 직렬화가 매우 간단하고 편리합니다. 예를 들어 QDataStream을 통해 QJsonDocument 및 친구를 사용할 때의 장점은 사람이 읽을 수 있는 JSON 파일을 얻을 뿐만 아니라 코드를 다시 작성하지 않고도 필요한 경우 바이너리 형식을 사용할 수 있다는 것입니다. 이 예제는 4개의 해당 단추가 있는 4개의 단계를 통해 진행됩니다. 이 튜토리얼에서 만들 려는 예제 응용 프로그램은 해커 뉴스에 게시 된 10 개의 가장 최근의 이야기를 보여주는 매우 간단한 독자입니다. JSON 개체에서 단일 값을 읽는 것은 []연산자(]연산자)를 통해 쉽게 수행할 수 있습니다. 회담은 원거리 용을 통해 쉽게 접근 할 수있는 QJsonArray 내부에 저장됩니다. 배열의 각 값이 개체이기 때문에 첫 번째 단계는 각 토크에 대해 이 루트 개체를 가져오는 것입니다. 완전히 추출 된 후 용기에 밀려 나게됩니다.

때로는 문서의 특정 위치에서 기대할 수있는 유형의 종류를 잘 모르는 다음 isArray, isObject (…) 함수는 찾을 수있는 문서의 버전을 찾는 데 도움이됩니다. 예를 들어 배열에서 php 쓰기 encode_json과의 차이점을 보았으며 때로는 주석이 배열로 인코딩되지만 대부분 개체로 인코딩됩니다. QJsonObject는 또한 반복기 인터페이스와 같은 STL을 제공하여 JSON 개체의 내용을 반복할 수 있습니다. 첫 번째 예제의 개체와 달리 이번에는 개체의 모든 멤버를 반복하고 키와 값을 가져옵니다. 어느 쪽이든 개체에 액세스할 수 있습니다. 그런 다음 재생하고 예를 들어 생성자에게 색상을 전달할 수 있습니다. HTTP 및 FTP와 같은 일반적인 프로토콜을 기반으로 정상적인 네트워크 작업을 수행하는 높은 수준의 클래스뿐만 아니라 TCP 및 UDP 연결을 처리하는 낮은 수준의 클래스도 제공합니다. 후자는 다른 네트워크 프로토콜을 구현하는 데 사용할 수 있지만 모든 종류의 클라이언트/서버 아키텍처를 만들 수도 있습니다. 캐릭터 클래스는 게임에서 플레이어가 아닌 캐릭터(NPC)를 나타내며 플레이어의 이름, 레벨 및 클래스 유형을 저장합니다.

0saves
If you enjoyed this post, please consider leaving a comment or subscribing to the RSS feed to have future articles delivered to your feed reader.

Comments are closed.