programing

JSON은 ""로 시작할 수 있습니까?

stoneblock 2023. 3. 5. 09:26

JSON은 ""로 시작할 수 있습니까?

json.org에서 읽을 수 있는 바에 따르면 모든 JSON 문자열은 다음 문자로 시작합니다.{) 및 (중괄호[JSON을 사용하다

용 the the the를 .json4j, 도서관, , 도서관, 도서관, 도서관, 도서관, , 도서관, , 도서관, 도서관, 도서관, 도서관, , .[JSON은 JSON을 사용하고 있습니다.스키마를 으로 시작할 수 잘 .[ '시작할 수 없다'로할 수 {.

JSON은 어레이 또는 객체 중 하나입니다.특히 json.org에서 제외:

JSON은 다음 두 가지 구조를 기반으로 구축됩니다.

  • 이름/값 쌍의 집합입니다.다양한 언어에서 이는 객체, 레코드, 구조, 사전, 해시 테이블, 키 목록 또는 연관 배열로 실현됩니다.
  • 값의 순서부 리스트.대부분의 언어에서 이는 다음과 같이 인식됩니다.
    、 、 、 、 목록 、 스는또스 。

두 과 같이합니다.JSON 오브젝트 JSON 어레이

시작 문자와 끝 문자는 각각 곱슬 괄호 및 대괄호입니다.

★★★★★
여기서부터 : http://www.ietf.org/rfc/rfc4627.txt

JSON 텍스트는 일련의 토큰입니다.토큰 세트에는 6개의 구조 문자, 문자열, 숫자 및 3개의 리터럴 이름이 포함됩니다.

JSON 텍스트는 직렬화된 개체 또는 배열입니다.

갱신(2014년)

2014년 3월 현재 정의를 약간 수정하는 새로운 JSON RFC(7159)가 있습니다(4/5페이지 참조).

정의는 RFC 4627입니다.JSON-text = object / array

은 RFC RFC 7159로 되었습니다.JSON-text = ws value ws

서 ★★★★★ws과 ''를 .value는 다음과

JSON 값은 객체, 배열, 숫자 또는 문자열 또는 다음 세 가지 리터럴 이름 중 하나여야 합니다.

false null true

따라서 질문에 대한 대답은 여전히 "예"입니다. JSON 텍스트는 대괄호(즉, 배열)로 시작할 수 있습니다.외에, 할 수 되었습니다.false,null ★★★★★★★★★★★★★★★★★」true.

또한 이는 이전 RFC 4627의 인용문(강조 추가)에서 변경되었습니다.

JSON 텍스트는 일련의 토큰입니다.토큰 세트에는 6개의 구조 문자, 문자열, 숫자 및 3개의 리터럴 이름이 포함됩니다.

JSON 텍스트는 시리얼화된 값입니다.JSON의 특정 이전 사양에서는 JSON 텍스트가 객체 또는 배열로 제한되었습니다.JSON 텍스트가 호출되는 객체 또는 어레이만 생성하는 구현은 모든 구현이 이를 적합한 JSON 텍스트로 받아들인다는 점에서 상호 운용이 가능합니다.

문자열이 괄호하는 경우, 「」를 사용할 수 .JSONArray.parse JSONArray를 사용할 수 .get(i)여기서 i는 0부터 반환된 JSONArray까지의 지수입니다.size()-1.

import java.io.IOException;
import com.ibm.json.java.JSONArray;
import com.ibm.json.java.JSONObject;

public class BookListTest {
   public static void main(String[] args) {
      String jsonBookList = "{\"book_list\":{\"book\":[{\"title\":\"title 1\"},{\"title\":\"title 2\"}]}}";
      Object book_list;
      try {
         book_list = JSONObject.parse(jsonBookList);
         System.out.println(book_list);
         Object bookList = JSONObject.parse(book_list.toString()).get("book_list");
         System.out.println(bookList);
         Object books = JSONObject.parse(bookList.toString()).get("book");
         System.out.println(books);
         JSONArray bookArray = JSONArray.parse(books.toString());
         for (Object book : bookArray) {
            System.out.println(book);
         }
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}

그 결과 다음과 같은 출력이 생성되었습니다.

{"book_list":{"book":[{"title":"title 1"},{"title":"title 2"}]}}
{"book":[{"title":"title 1"},{"title":"title 2"}]}
[{"title":"title 1"}, {"title":"title 2"}]
{"title":"title 1"}
{"title":"title 2"}

" " " 에를 걸려고 했을 경우: " " "JSONObject.parse(books.toString());발생한 에러가 표시됩니다.

java.io.IOException: Expecting '{' on line 1, column 2 instead, obtained token: 'Token: ['

JSON.ORG Web 사이트에는 다음과 같이 기재되어 있습니다.

https://www.json.org/

이 사이트에는 다음과 같이 명시되어 있습니다.

JSON은 다음 두 가지 구조를 기반으로 구축됩니다.

  1. 이름/값 쌍의 집합입니다.다양한 언어에서 이는 객체, 레코드, 구조, 사전, 해시 테이블, 키 목록 또는 연관 배열로 실현됩니다.

  2. 값의 순서부 리스트.대부분의 언어에서 이것은 배열, 벡터, 목록 또는 시퀀스로 실현됩니다.

이것들은 범용 데이터 구조입니다.사실상 모든 현대 프로그래밍 언어는 어떤 형태로든 이들을 지원합니다.프로그래밍 언어와 호환 가능한 데이터 형식도 이러한 구조를 기반으로 하는 것이 타당합니다.JSON에서는 다음 형식을 취합니다.

오브젝트:

개체는 이름/값 쌍의 순서가 정렬되지 않은 집합입니다.개체는 {(왼쪽 중괄호)로 시작하고 }(오른쪽 중괄호)로 끝납니다.각 이름 뒤에는 :(콜론)이 붙고 이름과 값의 쌍은 , (콤마)로 구분됩니다.

{string: value, string: value}

어레이:

배열은 값의 순서 집합입니다.어레이는 [(왼쪽 괄호)](오른쪽 괄호)로 시작하여 끝납니다.값은 , (콤마)로 구분됩니다.

[value, value, value ….]

가치:

값은 큰따옴표로 묶은 문자열, 숫자, true 또는 false 또는 null, 객체 또는 배열일 수 있습니다.이러한 구조는 중첩될 수 있습니다.

문자열:

문자열은 백슬래시 이스케이프를 사용하여 큰따옴표로 둘러싸인 0자 이상의 Unicode 문자 시퀀스입니다.문자는 단일 문자열로 표시됩니다.문자열은 C 또는 Java 문자열과 매우 유사합니다.

번호:

숫자는 8진수 및 16진수 형식이 사용되지 않는다는 점을 제외하고는 C 또는 Java 번호와 매우 유사합니다.

공백에 대해서:

모든 토큰 쌍 사이에 공백을 삽입할 수 있습니다.몇 가지 부호화 세부사항을 제외하고, 그것은 언어를 완전히 설명합니다.

간단히 말하면 '네'입니다.

.json 파일에는 Numbers(단순히 10개라도), Strings(단순히 "hello", Bohans(true, false), Null(단순히 null), 어레이 및 개체를 넣을 수 있습니다.https://www.json.org/json-en.html

숫자, 문자열, Booans 및 Null만 사용하는 것은 논리적으로 맞지 않습니다.jon 파일에서는 어레이나 오브젝트(대부분 중첩된 버전)와 같은 보다 복잡한 구조화 데이터를 사용하기 때문입니다.

아래에서는 오브젝트 배열이 포함된 샘플 JSON 데이터를 찾아 "https://jsonplaceholder.typicode.com/posts"부터 시작할 수 있습니다.

언급URL : https://stackoverflow.com/questions/5034444/can-json-start-with