36

アプリの内部ストレージに画像を保存して、非公開にします。そこで、少し調べて、ディレクトリを取得する2つの方法を見ました。

1.getDirを使用

File dir = getDir(Environment.DIRECTORY_PICTURES, Context.MODE_PRIVATE);

2.getFilesDirを使用

File dir = getFilesDir();

どちらがベストですか?内部ストレージ内の場所を返すのはどれですか?

ファイルを書き込む方法は、ディレクトリを取得する方法によって異なりますか?Androidでファイルを書く方法はたくさんあるので、少し迷っています。

4

1 に答える 1

43

getFilesDir()アプリケーション専用のディレクトリにFileオブジェクトを返します。を使用するopenFileOutput(String, int)と、書き込んだデータはこのディレクトリに直接保存され、他のアプリケーションからアクセスすることはできません。それはあなたのアプリケーションファイルを保持します。

getDir()内部メモリに任意のファイルまたはディレクトリを作成できます。作成したモードによっては、他のアプリケーションからもアクセスできます。openFileOutput(String, int)これの出力では機能しないため、このディレクトリまたはファイルを処理するには、ファイルの書き込みと読み取りの他の手段を使用する必要があります。これは、アプリケーションでのみ使用されるファイル以外のカスタムファイルを作成するためによく使用されます。

于 2012-08-02T17:42:30.643 に答える