본문 바로가기
안드로이드 자바

[JAVA][Android][PHP]json_encode 안드로이드 전송 / UTF-8 변환

by teamnova 2024. 7. 12.
728x90

PHP -> 안드로이드로 보낸 데이터(message 의 데이터) 가 저런 형태로 되어있었다.

 

해결방법은 파싱 후에 인코딩된 문자열을 디코딩하면 된다.

JSONObject jsonResponse = new JSONObject(result);
// 제이슨으로 php 에서 넘어온 데이터를 파싱합니다.
String certificationNumber = jsonResponse.getString("certification_number");
// php 에서 랜덤수를 보낸 키값으로 데이터를 찾습니다.
String message = jsonResponse.getString("message");
// 메시지 디코딩 (UTF-8으로 인코딩된 문자열을 한글로 변환)
String messageDecoded = decodeUTF8(message);
Log.d(TAG, "messageDecoded : " + messageDecoded);
Log.d(TAG, "certificationNumber: " + certificationNumber);

 

여기서 decodeUTF8(mssage) 는 만든매서드이며 mssage는 매개변수로 변환할 String 값을 넣으면 된다.

// UTF-8로 인코딩된 문자열을 디코딩하는 메서드
String decodeUTF8(String encodedString) {
    try {
        byte[] bytes = encodedString.getBytes("UTF-8");
        return new String(bytes, "UTF-8");
    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
        return null;
    }
}