Cómo convertir el valor de char a ascii en el lenguaje kotlin

Estoy desarrollando una aplicación de Android con kotlin en la que necesito convertir un carácter de cadena a su valor ASCII ,

 fun tryDiCript(cypher: String) :String { var cypher = "fs2543i435u@$#g#@#sagb@!#12416@@@" var originalText = "" var regEx =Regex("[az]") for(char in regEx.findAll(cypher)) { originalText += (char.value.toInt()).toString() } return originalText } 

este website tutorial me mostró usar char.toInt() pero da error de time de ejecución diciendo

Causado por: java.lang.NumberFormatException: Invalid int: "u"

Entonces, ¿cómo es posible que alguien más caliente para convertir el valor de char a ASCII me ayude?

char.value es una String . Cuando se llama a String.toInt() , se espera que una cadena numérica como "1", "-123" se analice en Int . Entonces, "f".toInt() le dará NumberFormatException ya que "f" no es una cadena numérica.

Si está seguro de que char.value es una String contiene exactamente un solo carácter. Para get el valor de ascii, puede usar:

 char.value.first().toInt() 

Dijiste ascii , no unicode . Entonces es fácil.

Este es un ejemplo que le muestra cómo convertir un carácter ( 'A' ) a su valor ascii.

 fun main(vararg args: String) { println('A'.toByte().toInt()) } 

El resultado es lo que esperábamos, 65.

Tenga en count que esto no funciona con Unicode.

Editar 1

Supongo que esto funciona.

 fun tryDiCript(cypher: String): String { var cypher = "fs2543i435u@$#g#@#sagb@!#12416@@@" var originalText = "" var regEx = Regex("[az]") for(char in regEx.findAll(cypher)) originalText += char.value[0].toInt().toString() return originalText } 

Y te recomiendo que uses StringBuilder .

 fun tryDiCript(cypher: String): String { var cypher = "fs2543i435u@$#g#@#sagb@!#12416@@@" val originalText = StringBuilder() var regEx = Regex("[az]") for(char in regEx.findAll(cypher)) originalText.append(char.value[0].toInt()) return originalText.toString() } 
  • Android: problema del module de actividad de Kotlin con Dagger
  • ¿Cómo pasar una matriz de integers a un método que espera `Array <T>`?
  • Conversión de files de definición de TypeScript a Kotlin
  • ¿Cómo iterar sobre Single <List> y asignar a otra list?
  • Igualdad en Kotlin
  • ViewPager en Fragment no está funcionando por segunda vez
  • Inicialización de matriz de subprocesss múltiples en Kotlin
  • antes en Kotlin
  • Es "org.jetbrains.anko: anko-commons: $ anko_version" mal?
  • Compartir código entre plataforms / idiomas (por ejemplo, Swift, Kotlin, JavaScript)
  • Conversión de Kotlin a error de Javascript: "restar no es una function"