Flutter에서 JSON 문자열을 JSON 객체로 변환하는 방법은 무엇입니까?

JSON은 JavaScript Object Notation의 줄임말이며 체계적이고 접근하기 쉬운 방식으로 정보를 저장하는 방법입니다. 일반적으로 앱과 서버 간의 전체 통신은 JSON을 통해 이루어집니다. 이 기사에서는 Flutter에서 JSON 문자열을 JSON 객체로 변환하는 방법을 살펴보겠습니다.

Flutter에서 json 문자열을 json 객체로 변환하는 방법은 무엇입니까?
json.decode를 사용해야 합니다. JSON object을 받아 중첩된 키-값 쌍을 처리할 수 있습니다. 코드 스니펫은 다음과 같습니다.

import 'dart:convert';
// actual data sent is {success: true, data:{token:'token'}}
final jsonResponse = await client.post(url, body: reqBody);
// Notice how you have to call body from the response if you are using http to retrieve json
final body = json.decode(jsonResponse .body);
// This is how you get success value out of the actual json
if (body['success']) {
  //Token is nested inside data field so it goes one deeper.
  final String token = body['data']['token'];
  return {"success": true, "token": token};
}


다음과 같이 JSON 배열을 객체 목록으로 변환할 수도 있습니다.

String jsonString = yourMethodThatReturnsJsonText();
Map<String,dynamic> d  = json.decode(jsonString.trim());
List<MyModel> list = List<MyModel>.from(d['jsonArrayName'].map((x) => MyModel.fromJson(x)));
And UserModle is something like this:

class UserModle{
  String name;
  int age;
  UserModle({this.name,this.age});
  UserModle.fromJson(Map<String, dynamic> json) {
    name= json['name'];
    age= json['age'];
  }
  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['name'] = this.name;
    data['age'] = this.age;
    return data;
  }
}


때때로 이것을 사용해야 합니다:

Map<String, dynamic> toJson() {
  return {
    jsonEncode("phone"): jsonEncode(numberPhone),
    jsonEncode("country"): jsonEncode(country),
 };
}


이 코드는 {“numberPhone”:”+225657869″, “country”:”CI”}와 같은 문자열을 제공합니다. 그래서 해독하기 쉽습니다.

json.decode({"전화번호":"+22565786589", "국가":"CI"})`

결론:
읽어 주셔서 감사합니다!!! 기사가 마음에 드셨기를 바랍니다!!!

이 기사에서는 Flutter에서 JSON 문자열을 JSON 객체로 변환하는 방법을 배웠습니다. 어려움을 느끼신다면 질문에 댓글을 달아주세요. Flutter Agency에는 기술적 문제를 해결하는 데 도움을 줄 Flutter 전문가 팀이 있습니다.

좋은 웹페이지 즐겨찾기