패키지 함수
json 패키지가 제공하는 최상위 함수로, Processor 인스턴스를 생성하지 않고도 직접 호출할 수 있습니다. 기능별로 분류하면 다음과 같습니다:
조회 및 가져오기
경로 쿼리, 타입 안전 가져오기, 안전한 가져오기 및 배치 가져오기 함수입니다.
주요 함수: Get · GetWithContext · GetString · GetInt · GetFloat · GetBool · GetArray · GetObject · GetTyped[T] · SafeGet · GetMultiple
수정
설정, 병합 JSON 데이터 함수입니다.
주요 함수: Set · SetMultiple · SetCreate · SetMultipleCreate · MergeJSON · MergeMany
삭제 작업
JSON 데이터 노드를 삭제하는 함수입니다.
주요 함수: Delete · DeleteClean
인코딩 출력
직렬화, 역직렬화, 스트리밍 인코딩/디코딩 함수입니다.
주요 함수: Marshal · Unmarshal · MarshalIndent · Encode · EncodePretty · EncodeWithConfig · Prettify · Compact · CompactString · Indent · HTMLEscape · NewEncoder · NewDecoder · EncodeBatch · EncodeFields · EncodeStream · SaveToWriter
파싱 및 검증
JSON 을 대상 객체로 파싱, Processor 인스턴스 파싱 및 JSON 유효성/Schema 검증 함수입니다.
주요 함수: Parse · ParseAny · Processor.Parse · Processor.ParseAny · Valid · ValidWithConfig · ValidateSchema
배치 작업
여러 JSON 작업 (get/set/delete/validate) 을 배치로 처리하는 함수입니다.
주요 함수: ProcessBatch · BatchOperation · BatchResult
JSONL
JSONL(JSON Lines) 파싱, 스트리밍 읽기, 변환 및 쓰기 함수입니다.
주요 함수: ParseJSONL · ToJSONL · ToJSONLString · StreamLinesInto[T] · NewJSONLWriter
파일 I/O
파일 읽기/쓰기 및 스트리밍 I/O 함수입니다.
주요 함수: LoadFromFile · LoadFromReader · SaveToFile · MarshalToFile · UnmarshalFromFile · SaveToWriter
반복 메서드
JSON 배열, 객체, 중첩 구조 및 파일을 순회하는 반복 함수입니다.
주요 함수: Foreach · ForeachWithPath · ForeachNested · ForeachReturn · ForeachWithError · ForeachNestedWithError · ForeachWithPathAndIterator · ForeachWithPathAndControl · ForeachFile · ForeachFileWithPath · ForeachFileChunked · ForeachFileNested
파일 반복
파일 스트리밍 반복 사례 가이드와 실무입니다 (패키지 레벨 ForeachFile* 함수의 API 레퍼런스는 반복 메서드 참조).
주요 함수: ForeachFile · ForeachFileWithPath · ForeachFileChunked · ForeachFileNested
보조 도구
타입 변환, 비교, 캐시 관리, 오류 처리 등 유틸리티 함수입니다.
주요 함수: CompareJSON · MergeJSON · MergeMany · ClearCache · GetStats · GetHealthStatus · SetGlobalProcessor · ShutdownGlobalProcessor · SafeError · RedactedPath · WarmupCache
빠른 탐색
| 용도 | 추천 함수 | 문서 |
|---|---|---|
| 단일 값 가져오기 | GetString, GetInt, GetFloat, GetBool | 조회 및 가져오기 |
| 임의 타입 가져오기 | Get, GetTyped[T] | 조회 및 가져오기 |
| 기본값으로 가져오기 | GetString(data, path, "default") | 조회 및 가져오기 |
| 제네릭 가져오기 | GetTyped[T](data, path, defaultValue...) | 조회 및 가져오기 |
| 배치 가져오기 | GetMultiple | 조회 및 가져오기 |
| JSON 수정 | Set, SetCreate | 수정 |
| JSON 삭제 | Delete, DeleteClean | 삭제 작업 |
| 직렬화 | Marshal, Encode | 인코딩 출력 |
| 역직렬화 | Unmarshal, Parse | 인코딩 출력 · 파싱 및 검증 |
| 포맷팅 | Prettify, CompactString, Processor.Compact | 인코딩 출력 |
| 출력 인쇄 | Encode + fmt.Println, EncodePretty | 인쇄 함수 |
| 배치 인코딩 | EncodeBatch, EncodeFields, EncodeStream | 배치 인코딩 · 프로세서 출력 |
| 배치 작업 | ProcessBatch | 배치 작업 |
| 검증 | Valid | 파싱 및 검증 |
| JSON Schema 검증 | ValidateSchema | 파싱 및 검증 |
| 파일 읽기/쓰기 | LoadFromFile, SaveToFile | 파일 I/O |
| 반복 순회 | Foreach, ForeachWithPath, ForeachNested | 반복 메서드 |
| 파일 반복 | ForeachFile, ForeachFileChunked | 반복 메서드 |
| JSONL 처리 | ParseJSONL, ToJSONL | JSONL |
| 비교 | CompareJSON | 보조 도구 |
| 병합 | MergeJSON, MergeMany | 수정 |
| 타입 변환 | AccessResult 타입 변환 메서드 | 보조 도구 |
| 오류 처리 | JsonsError, errors.Is | 상수 오류 |