Blue_Alien
Blue_Alien

Reputation: 2177

absolute path to directory in the internal storage in android?

I want to keep my app required files inside a directory under internal storage. in the previous stage i used externalStorageDirectory to store my data. now i am using the below code to refer my external directory

 Environment.getExternalStorageDirectory()+"/mydirectory"; 

I need an equivalant code to refer my directory in the internal directory, can anybody help me...thanks,

Solution:

getFilesDir()+"/mydirectory";

thanks for all of your suggestion and help.

Upvotes: 2

Views: 40388

Answers (3)

Simas
Simas

Reputation: 44178

Use getFilesDir() for that.

From the docs:

Returns the absolute path to the directory on the filesystem where files created with openFileOutput(String, int) are stored.

No permissions are required to read or write to the returned path, since this path is internal storage.

To answer your comment, I'll quote the docs docs:

By default, files saved to the internal storage are private to your application and other applications cannot access them (and the user only can access as root). When the user uninstalls your application, these files are removed.

Upvotes: 8

Harsh Parikh
Harsh Parikh

Reputation: 3845

You can use this:

File f = new File(Environment.getDataDirectory(), "subdir");

Upvotes: 1

Sainath Patwary karnate
Sainath Patwary karnate

Reputation: 3195

public  File createDir() {
         FIle DIR=null;
         if (android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED))
                DIR=new File(android.os.Environment.getExternalStorageDirectory()+DIRNAME);
            else
                DIR=context.getCacheDir();
            if(!DIR.exists())
                DIR.mkdirs();
            return DIR;  
    }

This one i m using in one of my application and which creates the directory in external if it is mounted or not exists it will create in internal storage

Upvotes: 1

Related Questions