JSON to Rust 구조체 변환기 (serde)
개발
JSON 객체나 배열을 붙여넣으면 serde의 `Serialize, Deserialize`를 파생하고 필드가 Rust 타입(String, i64, f64, bool, Vec<...>)으로 매핑된 Rust `struct` 정의와 중첩 객체용 별도 구조체를 바로 얻을 수 있습니다. snake_case가 아닌 키에는 `#[serde(rename = "...")]` 속성이 추가됩니다. 모든 처리는 브라우저에서 로컬로 실행되며 JSON은 업로드되지 않습니다.
—
Rust 구조체
사용법
- 입력 상자에 JSON을 붙여넣거나 입력합니다.
- 필요하면 루트 구조체 이름을 변경합니다(기본값 AutoGenerated).
- 출력 상자에서 생성된 구조체를 복사하고 Cargo.toml에 serde를 추가합니다.
자주 묻는 질문
- 숫자는 어떤 타입이 되나요?
- 정수는 i64, 소수점이 있는 숫자는 f64로 변환됩니다. u32, i32 등 다른 폭이 필요하면 직접 수정하세요.
- null이나 빈 배열은 어떻게 처리되나요?
- 샘플로 타입을 추론할 수 없으므로 null은 Option<serde_json::Value>로, 빈 배열은 Vec<serde_json::Value>로 변환됩니다.
- 일부 필드에 serde rename이 붙는 이유는 무엇인가요?
- Rust 필드는 snake_case를 사용합니다. JSON 키가 다르면(예: camelCase) 직렬화가 원래 키와 일치하도록 #[serde(rename = "...")] 속성이 추가됩니다.
- 제 JSON이 어딘가로 전송되나요?
- 아니요. 변환은 전적으로 브라우저에서 이루어지며 아무것도 업로드되지 않습니다.
관련 도구
Base64 ↔ 16진수 변환기
Base64 문자열을 16진수 바이트로, 16진수를 다시 Base64로 변환합니다. URL-safe 지원, 브라우저에서 동작합니다.
개발00
Quoted-Printable 인코더 & 디코더
텍스트를 MIME Quoted-Printable(RFC 2045)로 인코딩하거나 다시 디코딩 — =XX 이스케이프·소프트 줄바꿈·UTF-8 처리, 인코딩 시 76자 줄바꿈 — 브라우저에서.
개발00
해시 생성기 (SHA)
텍스트로 SHA-1·SHA-256·SHA-384·SHA-512 해시를 생성하세요.
개발00
URL 인코더 / 디코더
URL용으로 텍스트를 퍼센트 인코딩하거나, 인코딩된 URL을 디코딩하세요.
개발00
Base64 인코더 / 디코더
텍스트를 Base64로 인코딩하거나 다시 텍스트로 디코딩하세요.
개발00
JSON 포맷터 & 검증기
브라우저에서 바로 JSON을 포맷·정렬·압축·검증하세요.
개발00