アセットからテキスト ファイルを 1 文字ずつ読み取る方法を知りたいです。
たとえば、このファイル「text.txt」とその中に「12345」がある場合、すべての数字を 1 つずつ読み取りたいと思います。
私はすでにこれを探しましたが、解決策が見つかりません。
ありがとう。
アセットからテキスト ファイルを 1 文字ずつ読み取る方法を知りたいです。
たとえば、このファイル「text.txt」とその中に「12345」がある場合、すべての数字を 1 つずつ読み取りたいと思います。
私はすでにこれを探しましたが、解決策が見つかりません。
ありがとう。
CommonsWare の回答に感謝します :) Eric に返信したリンクに加えて、コードを追加しました。結果は次のとおりです (完全に機能しています)。
AssetManager manager = getContext().getAssets();
InputStream input = null;
try {
input = manager.open("test.txt");
} catch (IOException e1) {
Log.d("ERROR DETECTED", "ERROR WHILE TRYING TO OPEN FILE");
}
try {
char current;
while (input.available() > 0) {
current = (char) input.read();
Log.d("caracter", ""+current);
}
} catch (IOException e) {
e.printStackTrace();
}
助けてくれてありがとう:)
編集:次のコードはすべてのファイル行を読み取りますが、上記はそうではありません:
AssetManager manager = getContext().getAssets();
InputStream input = null;
InputStreamReader in = null;
try {
input = manager.open("teste.txt");
in = new InputStreamReader(input);
} catch (IOException e1) {
Log.d("ERROR DETECTED", "ERROR WHILE TRYING TO OPEN FILE");
}
try {
char current;
while (in.ready()) {
current = (char) in.read();
Log.d("caracter", ""+current);
}
} catch (IOException e) {
e.printStackTrace();
}
を使用してongetAssets().open("name.txt")
を取得し、必要に応じて読み込みます。InputStream
assets/name.txt