Android

[안드로이드/데이터입출력] assets

gangmini 2023. 4. 29. 00:27
반응형

assets

  • 하위 폴더들을 만들어 계층적으로 데이터 파일들을 관리하고 싶을 때 사용 (raw 폴더는 하위 폴더X)
  • res 폴더 내부가 아니므로 리소스(R 클래스)로 관리 X
  • assets 폴더에는 다양한 종류의 파일들을 담고 사용 가능
binding.button.setOnClickListener {
    val inputStream = assets.open("text/data1.txt")
    val isr = InputStreamReader(inputStream,"UTF-8") //스트림에서 문자열을 읽어오는 reader
    val br = BufferedReader(isr)  // 스트림은 그냥 데이터의 흐름이고 버퍼는 그걸 일시적으로 저장하는 곳인가?...

    var str:String? = null
    val sb = StringBuffer()

    do {
        str = br.readLine()
        if (str != null) {
            sb.append("${str}\n")
        }
    } while (str != null)

    br.close() //파일 닫기
    binding.textView.text = sb.toString()

}

 

폰트 사용하기

  • 폰트 파일을 손쉽게 사용할 수 있도록 클래스 제공 
binding.button3.setOnClickListener {
    // 폰트 객체를 만든다.
    val face = Typeface.createFromAsset(assets,"font/NanumPenScript-Regular.ttf")
    binding.textView.typeface = face
}

반응형