studio strings regenerar recursos manejo getresources espaƱol array archivo java android file resources

java - strings - Acceda a archivos de recursos en Android



strings.xml android studio (2)

El hecho de que tenga este public static void main(String[] args) significa que está implementando su código extremadamente incorrecto. Es casi seguro que no hayas pasado por ninguno de los hello android tutorials. Definitivamente deberías hacer eso.

Tengo un archivo de recursos en mi carpeta / res / raw / (/res/raw/textfile.txt) que estoy tratando de leer desde mi aplicación de Android para su procesamiento.

public static void main(String[] args) { File file = new File("res/raw/textfile.txt"); FileInputStream fis = null; BufferedInputStream bis = null; DataInputStream dis = null; try { fis = new FileInputStream(file); bis = new BufferedInputStream(fis); dis = new DataInputStream(bis); while (dis.available() != 0) { // Do something with file Log.d("GAME", dis.readLine()); } fis.close(); bis.close(); dis.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }

He intentado con una sintaxis de ruta diferente, pero siempre recibo un error java.io.FileNotFoundException . ¿Cómo puedo acceder a /res/raw/textfile.txt para procesar? Es File file = new File ("res / raw / textfile.txt"); el método equivocado en Android?

* Respuesta: *

// Call the LoadText method and pass it the resourceId LoadText(R.raw.textfile); public void LoadText(int resourceId) { // The InputStream opens the resourceId and sends it to the buffer InputStream is = this.getResources().openRawResource(resourceId); BufferedReader br = new BufferedReader(new InputStreamReader(is)); String readLine = null; try { // While the BufferedReader readLine is not null while ((readLine = br.readLine()) != null) { Log.d("TEXT", readLine); } // Close the InputStream and BufferedReader is.close(); br.close(); } catch (IOException e) { e.printStackTrace(); } }


Si tiene un archivo en res/raw/textfile.txt de su actividad / widget de llamada:

getResources().openRawResource(...) devuelve un InputStream

Los puntos deberían ser un entero encontrado en R.raw ... correspondiente a su nombre de archivo, posiblemente R.raw.textfile (generalmente es el nombre del archivo sin extensión)

new BufferedInputStream(getResources().openRawResource(...)); luego lea el contenido del archivo como una secuencia