実現したいこと
Androidアプリ開発の学習に、アプリを制作しています。
アセットフォルダ中のテキストファイルを読み込んで、出力したいと考えています。最終的な目標は小説が読めるアプリの制作です。
しかし、何故か最初の一行を延々と出力され続けています。
Kotlin
1 2 val file = assets.open("henshin.txt") 3 try{ 4 val inst = InputStreamReader(file) 5 val br = BufferedReader(inst) 6 val line = br.readLine() 7 while (line != null) { 8 System.out.println(line) 9 } 10 inst.close() 11 br.close() 12 }catch (e: IOException) { 13 Log.e("IOException", "${e}") 14 } 15
テキストファイルの中身はこのようになっています。
txt
1変身 2\nDIE VERWANDLUNG 3\nフランツ・カフカ Franz Kafka 4\n原田義人訳 5\n 6\n ある朝、グレゴール・ザムザが気がかりな夢から目ざめたとき、自分がベッドの上で一匹の巨大な毒虫に変ってしまっているのに気づいた。 7//以下フランツ・カフカの変身の全文 167KBのテキストファイル 青空文庫より
追記:試したこと
こんなページを見つけたので、下記のように修正してみました。
テキストファイルの\nも消去しました。
Kotlin
1var text = "" 2 val file = assets.open("henshin.txt") 3 try{ 4 val inst = InputStreamReader(file) 5 val br = BufferedReader(inst) 6 val line = br.readLine() 7 while (line != null) { 8 text += line + "\n" 9 System.out.println(text) 10 } 11 inst.close() 12 br.close() 13 }catch (e: IOException) { 14 Log.e("IOException", "${e}") 15 }
ですが、やはり結果は変わらないようでした。
起きている問題
上記のコードで上記のテキストファイルを出力しようとすると、以下のように出力されます。
変身 変身 変身 変身 変身 変身 変身 変身 変身 変身 変身 変身 . . .
二行目以降を読み込むにはどのようにすればいいでしょうか。
初歩的な質問かもしれませんがよろしくお願いいたします。
作業環境
OS: Microsoft Windows10 Pro
使用言語: Kotlin 1.3.61
Android Studio 3.5.3
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/01/30 06:51
2020/01/30 07:06
2020/01/30 07:53
2020/01/30 08:18
2020/01/30 08:25