2017-10-03 1 views
0

테스트 데이터로 사용할 mongo로 가져올 필요가있는 크기가 적당한 json 파일이 있습니다. 내가 mongoimport을 사용하려고 할 때, 나는 응답을받을mongoimport는 JSON을 어떻게 해석합니까?

실패 : 잘못된 문자 '}'객체 키 문자열 여기

의 시작을 찾고 조각이다 : 프로세싱 문서 # 1 오류 JSON을 가져 오려고합니다. 빈 줄을 제거해도 문제가 해결되지 않았으며 여기에서 발견 된 제안 사항은 JSON invalid character '}' looking for beginning of object key string입니다. 린터를 통해 JSON을 실행하는 것과 같은 문제는 해결되지 않았습니다. 유효한 JSON으로 인식되지만 mongoimport에서는 작동하지 않습니다. 여기

[{ 
    "prompt_id": "id1", 
    "prompt_text": "What is the best advice you’ve ever received? What were you doing at the time?" 

}, 
{ 
    "prompt_id": "id2", 
    "prompt_text": "Write from a ladybug’s point of view. What does a typical day look like for you?" 

}] 

내가되어

mongoimport --db testdb --collection prompts --file "fullfilepath\prompts.json" 

내 질문을 사용하고 터미널 명령입니다 "어떻게 JSON 볼 mongoimport합니까?" 나는 객체 키 문자열 (object key string)이라고하는 래핑 피스 (wrapping piece)가 있다고 생각하지만, 어떻게 생겼는지 확신 할 수 없다.

+0

어떤 mongoimport 버전을 사용하고 있습니까? JSON이 배열 인 것 같습니다.이 경우 ['--jsonArray'] (https://docs.mongodb.com/manual/reference/program/mongoimport/#cmdoption-jsonarray)를 올바르게 추가해야합니다 JSON을 해석하십시오. 배열 방식은 16MB 이하의 가져 오기로 제한되므로 "적당한 크기의 파일"에 적합하지 않을 수 있습니다. – Stennie

+0

파일은 텍스트 일 ​​뿐이므로 16MB 경계 내에 있으므로 문제가되지 않습니다. 그러나 명령에'--jsonArray'를 추가하면 OP에 나열된 것과 똑같은 오류가 반환됩니다. – austinthemassive

답변

0

을 db에있는 컬렉션에 사용하고 그 결과 내 mongoimport까지 정확하게 JSON의 단일 객체를 반복합니다. 그 후, 몇 가지 간단한 대체 조작만으로 JSON 전체를 올바르게 가져올 수있었습니다.

원래 질문에 대한 답변으로 mongoimport 명령을 사용하려면 개체 ID (아래 예제에서 _id)가 필요합니다.

다음은 JSON이 수락 할 때 어떻게 생겼는지입니다 :

{ 
    "_id":{ 
     "$oid": "69d4023e2cd5ac10f8b92d40" 
    }, 
    "prompt_id": "promptid1", 
    "prompt_text": "What is the best advice you’ve ever received? What were you doing at the time?" 
} 
{ 
    "_id":{ 
     "$oid": "69d4023e2cd5ac10f8b92d41" 
    }, 
    "prompt_id": "promptid2", 
    "prompt_text": "Write from a ladybug’s point of view. What does a typical day look like for you?"" 
} 

도 내가 --jsonArray 플래그를 필요로하지 않고, 같은 명령을 사용하여 있습니다.

mongoimport --db testdb --collection prompts --file "fullfilepath\prompts.json" 
관련 문제