Skip to content
Advertisement

openFileOutput() method vs FileOutputStream() constructor

Why in Android one should use openFileOutput() method instead of FileOutputStream() constructor?

Would the mode type as a second param of openFileOutput() be the only “respectful” reason for all the cases?

FileOutputStream fos;
fos = openFileOutput("test.txt", Context.MODE_PRIVATE);
fos = new FileOutputStream("test.txt");

Advertisement

Answer

Would the mode type as a second param of openFileOutput() be the only “respectful” reason for all the cases?

Another difference is that openFileOutputStream opens / creates a file in the the device’s “internal” storage. By contrast FileOutputStream allows use of both internal and external storage.

A third difference is that openFileOutputStream writes files in the context of the current application, while FileOutputStream can write in any context … modulo possible permissions issues.

(Both versions can open files in append mode. That is not a point of difference.)

Reference:

User contributions licensed under: CC BY-SA
1 People found this is helpful
Advertisement