코틀린으로 csv 파일을 읽으려고 하는데, 글자가 깨짐니다.
조회수 313회
코틀린을 통해서 외부저장소에 저장된 csv 파일을 읽으려고 합니다. text 파일을 성공했는데, csv 파일은 그램과 같이 글자가 깨지네요, 안드로이드 스튜디오 인코딩 세팅을 utf-8로 변경해도 변화가 없습니다. 어떻게 해야 할까요?
https://drive.google.com/file/d/1cGt6GZxj3ceykQIj5J-tw79trBP8AlNy/view?usp=sharing https://drive.google.com/file/d/1BZk1tePw5k_y9Oo3wNx_mMB9hDRCURlr/view?usp=sharing (사진이 업로드가 안 되어서 불가피하게 구글드라이브 이미지로 올립니다)
코틀린 파일
class GetTxtActivity : AppCompatActivity() {
private val vBinding by lazy {ActivityGetTxtBinding.inflate(layoutInflater)}
val getCsvCode:Int = 1
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(vBinding.root)
vBinding.getCellBtn.setOnClickListener{
val downUri = Uri.parse("")
openCsvFile(downUri)
}
}
private fun openCsvFile(pickerInitialUri: Uri){
val intent = Intent(Intent.ACTION_OPEN_DOCUMENT).apply {
addCategory(Intent.CATEGORY_OPENABLE)
type = "text/csv/dnf/*"
putExtra(DocumentsContract.EXTRA_INITIAL_URI, pickerInitialUri)
}
startActivityForResult(intent, getCsvCode)
} //openCsvFile 끝
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, requestCode, data)
if(requestCode == getCsvCode && resultCode == Activity.RESULT_OK){
data?.data?.also { uri ->
val inp = getContentResolver().openInputStream(uri)
inp?.bufferedReader()?.useLines { lines->
for(item in lines){
Log.d("test", item)
}
}
}
}
} //onActivityResult 끝
} // GetTxt 끝
댓글 입력