Kotlin 유니코드 한글 변환하기 | kotlin unicode to korean

유니코드 한글로 변환하기

가끔식 네트워크를 통한 데이터를 받아보면 유니코드로 오는 경우가 있다.

바꾸는 방법은 간단하다.

  private fun convertStringUnicodeToKorean(data: String): String {

  val sb = StringBuilder() // 단일 쓰레드이므로 StringBuilder 선언
  var i = 0

  /**
   * \uXXXX 로 된 아스키코드 변경
   * i+2 to i+6 을 16진수의 int 계산 후 char 타입으로 변환
   */
  while (i < data.length) {

    if (data[i] == '\\' && data[i + 1] == 'u') {

      val word = data.substring(i + 2, i + 6).toInt(16).toChar()
      sb.append(word)
      i += 5
    } else {
      sb.append(data[i])
    }

    i++
  }

  return sb.toString()
}

결론



Related Posts