JavaScriptEncoder.UnsafeRelaxedJsonEscaping 속성은?
기본 인코더와 달리 해당 속성을 적용하면 <,>,&와 같은 HTML 구분 문자를 이스케이프 하지 않는다.
예를 들어 출력 데이터가 UTF-8로 설정된 Content-type의 응답 내에는 사용할 수 있다.
기본 인코딩과 달리 따옴표는 \u0022가 아닌 \" 로 인코딩 된다.
설정하지 않으면 json 파일로 출력시에 내용이
>> 설정 전
#Desc": "\uD558\uD2B8 \uC120\uAE00\uB77C\uC2A41",
와 같은 식으로 출력되어서 읽을 수가 없다.
설정 코드
using var stream = new FileStream(outputPath, FileMode.Create);
using var writer = new Utf8JsonWriter(stream, new JsonWriterOptions() { Indented = true, Encoder = JavaScriptEncoder.UnsafeRelaxedJsonEscaping });
Encoder = JavaScriptEncoder.UnsafeRelaxedJsonEscaping를 설정하면
>> 설정 후
"#Desc": "하트 선글라스1"
로 출력되고 내용 확인이 가능해진다.
출처
'프로그래밍 > C#' 카테고리의 다른 글
C# List Sort()를 사용해서 정렬하기 (1) | 2023.11.23 |
---|---|
C# 8 : using 선언 (0) | 2023.11.10 |
C# IDisposable에 대해서 (1) | 2023.11.03 |
C# Convert 메서드 (0) | 2023.10.12 |
리터럴(Literal)과 상수(Constant)에 대해서 (0) | 2023.10.06 |
댓글