#android #android-fragments #android-activity #android-storage
#Android #android-фрагменты #android-активность #android-хранилище
Вопрос:
Как мы можем проанализировать CSV-файл из URI содержимого, возвращенного из ActivityResultContracts
private val startActivity = registerForActivityResult(ActivityResultContracts.OpenDocument()){ uri ->
uri?.let {
}
}
startActivity.launch(arrayOf("*/*"))
Ответ №1:
uri?.let {
var inputStream = contentResolver.openInputStream(fUri)
//inputStream.read()
}
Комментарии:
1. Как мне проанализировать входной поток в файл csv. InputStream.read() возвращает Int
Ответ №2:
fun readTextFile(source: Uri): String? {
return try {
val contentResolver = appContext.contentResolver
val inputStream = contentResolver.openInputStream(source)?: return null
val byteArray = inputStream.readBytes()
inputStream.close()
byteArray
String(byteArray)
} catch (e: IOException) {
e.printStackTrace()
throw e
}
}