메뉴 건너뛰기

조회 수 344 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

웹서버 iis (wcf 서버)와 안드로이드가 통신하는 앱을 만들고 있다.

 

 

근데 json이 이상한 데이터 형식으로 넘어오는 것이었다. 

큰따옴표가 붙어서 왔다.

({\"Table\":[{\"Column1\":\"OK\"}],\"Table1\":...) 이런식

 

 

찾아보니 iis에서 json값을 줄때, "따옴표를 \" 이런식으로 값을 줬다.

데이터 형식을 이스케이프(escape)로 준거였다.

 

 

wcf서버에서 이스케이프를 풀려고 갖은 방법을 해봐도 안풀렸다.

(이유는 wcf서버에서 이스케이프 형식을 강제해놓은 것 같다)

 

서버에서 이스케이프를 해독하여 보내는 방법은 포기하고,

안드로이드로 넘어와서 이스케이프를 해독(unescape) 해주려고 방법을 찾았다.

 

많은 시도 끝에 결국 아파치 라이브러리에 StringEscapeUtils 클래스의 unescapeJava 메소드를 써주니 해결됐다.

 

[적용방법]

 

1. gradle 에 아파치 라이브러리 추가. ( implementation 'org.apache.commons:commons-lang3:3.6'  추가)

 

implementation 'org.apache.commons:commons-lang3:3.6'

 

 

예시

 

 

2. StringEscapeUtils 클래스의 unescapeJava 메소드를 사용한다.

 

String test = StringEscapeUtils.unescapeJava(escape);

 //escape 는 이스케이프 문자열.

 

 

 

예시

 

 

 

[적용후]

 

s 가 escape 문자열 test가 unescape적용후

 

이제 json이 제대로 출력된다.

 


List of Articles
번호 제목 날짜 조회 수
257 버튼 이벤트 추가하기 file 2021.03.31 191
256 안드로이드 스튜디오 - 필수 재정의 함수 자동 코드 추가 file 2021.03.29 194
255 버튼 이벤트 file 2021.03.31 205
254 안드로이드 - 컨텍스트 메뉴(Context Menu) 사용 예제 file 2021.04.01 207
253 안드로이드 액티비티 세로고정 2021.09.14 207
252 안드로이드 - 인텐트(Intent)를 활용한 액티비티(Activity) 생성 및 실행하기 file 2021.03.31 213
251 안드로이드 - 액티비티(Activity)와 액티비티 생명 주기(Activity Life Cycle) file 2021.04.01 225
250 안드로이드 - setContentView()와 레이아웃 전개자(LayoutInflater) 2021.04.01 227
249 안드로이드 가상머신 실행 속도 빠르게 하기 file 2021.03.31 228
248 버튼 생성, 이벤트 처리 file 2021.03.31 236
247 안드로이드 - 스타일 리소스(Style Resource) 사용하기 <style> file 2021.03.31 238
246 안드로이드 - 랠러티브 레이아웃(Relative Layout) file 2021.03.29 239
245 This Handler class should be static or leaks might occur 시 해결법 2020.12.14 240
244 Fragment를 통한 하단탭 예제1 file 2020.12.14 242
243 App 실행 file 2021.03.31 244
242 안드로이드 - SQLiteDatabase 구현하기 file 2021.04.01 249
241 Virtual Device , 디자인 화면 file 2021.03.31 260
240 setContentView()와 레이아웃 전개자(LayoutInflater) 2021.03.31 266
239 안드로이드 - AsyncTask 구현 예제 file 2021.04.01 280
238 안드로이드 - 익명 클래스(Anonymous Class) 사용법 file 2021.03.31 281
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved