메뉴 건너뛰기

조회 수 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이 제대로 출력된다.

 


  1. 안드로이드 - 프레임레이아웃 (FrameLayout)

  2. 안드로이드 - 랠러티브 레이아웃(Relative Layout)

  3. 안드로이드 - 리니어 레이아웃 (Linear Layout)

  4. 안드로이드 스튜디오 - 코드 자동 들여쓰기

  5. 안드로이드 스튜디오 - 필수 재정의 함수 자동 코드 추가

  6. 안드로이드 스튜디오 - getter/setter 메소드 자동생성

  7. 안드로이드 스튜디오 - 싱글톤 패턴 (SingleTon Pattenr) 클래스 자동 생성

  8. 29Mar
    by 조쉬
    2021/03/29 Views 344 

    안드로이드 unescape /escape [StringEscapeUtils로 해결]

  9. 안드로이드 arrayList 를 Json으로 변환 / jsonarry

  10. Apk manager 이용해 Decompile (디컴파일) 하기

  11. 안드로이드 입문 연습문제 3문항 - CheckBox, RadioButton, EditText, Spinner, 이벤트연습

  12. 안드로이드 앱배포하기 apk 만들기

  13. 초기화면 페이지를 만들어보자. splash 페이지 제작

  14. ListView 리스트뷰 연습3 - 커스텀 리스트뷰 (Custom ListView)

  15. 하이브리드앱 기본 - WebView로 웹페이지 띄우기

  16. 패키지명을 한꺼번에 변경하기 (Refactor)

  17. 안드로이드 스튜디오 actionbar(액션바) 사라짐

  18. No Image 14Dec
    by
    2020/12/14 Views 240 

    This Handler class should be static or leaks might occur 시 해결법

  19. No Image 14Dec
    by
    2020/12/14 Views 759 

    안드로이드에서 url 주소로 이미지 바로 불러오기 (Glide 사용)

  20. 구글맵으로 GPS 현재위치 실시간 연동하기

Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

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

© k2s0o1d4e0s2i1g5n. All Rights Reserved