How to Read the File Content from the Internal Storage - Android App

How do I read the file content from the Internal storage - Android App

Take a look this how to use storages in android http://developer.android.com/guide/topics/data/data-storage.html#filesInternal

To read data from internal storage you need your app files folder and read content from here

String yourFilePath = context.getFilesDir() + "/" + "hello.txt";
File yourFile = new File( yourFilePath );

Also you can use this approach

FileInputStream fis = context.openFileInput("hello.txt");
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader bufferedReader = new BufferedReader(isr);
StringBuilder sb = new StringBuilder();
String line;
while ((line = bufferedReader.readLine()) != null) {
sb.append(line);
}

Is it possible to read a file from internal storage (Android)?

Yes you can read file from internal storage.

for writing file you can use this

String FILENAME = "hello_file";
String string = "hello world!";

FileOutputStream fos = openFileOutput(FILENAME, Context.MODE_PRIVATE);
fos.write(string.getBytes());
fos.close();

to read a file use the below:

To read a file from internal storage:

Call openFileInput() and pass it the name of the file to read. This returns a FileInputStream. Read bytes from the file with read(). Then close the stream with close().

Code:

StringBuilder sb = new StringBuilder();
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(is, "UTF-8"));
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line).append("\n");
}
is.close();
} catch(OutOfMemoryError om) {
om.printStackTrace();
} catch(Exception ex) {
ex.printStackTrace();
}
String result = sb.toString();

Refer this link

Reading file from android Internal storage

  1. filesDir for pointing to the internal storage files directory
  2. use blocks are good when you want to close stream automatically.
  3. try-catch block to handle any IO exceptions, e.g. FileNotFoundException.
try {
val file = File(filesDir, "test.txt")
if (file.exists()) {
file.bufferedReader().useLines {
...
}
}
} catch (e: IOException) {
...
}

Great article for a more in-depth look: Medium

Make sure your file exists by looking at your internal storage by:

AndroidStudio -> View -> Tools Windows -> Android Device Explorer

Read file from internal storage

    //Get the text file
File fileEvents = new File(context.getFilesDir().getAbsolutePath() + "/agenda_hoy.json");

//Read text from file
StringBuilder text = new StringBuilder();

try {
BufferedReader br = new BufferedReader(new FileReader(fileEvents));
String line;

while ((line = br.readLine()) != null) {
text.append(line);
text.append('\n');
}
br.close();
}
catch (IOException e) {
//You'll need to add proper error handling here
}

//you now have the file content in the text variable and you can use it
//based on you needs
Log.d("MYAPP",text.toString());

How to read and write file in internal storage?

You really don't need this much Code

Just Do this, And your Folder will be Created:

File file = new File(Environment.getExternalStorageDirectory(), "MAIN_FOLDER");

if (!file.exists()) {

file.mkdir();

}

File folder1 = new File(Environment.getExternalStorageDirectory(), "MAIN_FOLDER/FOLDER_1");

if (!folder1.exists()) {

folder1.mkdir();

}

File folder2 = new File(Environment.getExternalStorageDirectory(), "MAIN_FOLDER/FOLDER_2");

if (!folder2.exists()) {

folder2.mkdir();

}

...

How to read file names from Internal storage in Android

Try this way

private File path = new File("/storage/" + "");

File list[] = path.listFiles();
for( int i=0; i< list.length; i++)
{
myList.add( list[i].getName() );
}

Also please have a look at this answer



Related Topics



Leave a reply



Submit