ファイルアクセスに挑戦! (1/7)
作成:2009-12-28 10:59
更新:2010-05-11 13:43
更新:2010-05-11 13:43
■ファイルアクセスとストリーム
Javaでは、ファイルにデータを読み書きする際には、「ストリーム」と呼ばれるものを利用しますね。例えば、テキストファイルであればFileReader/FileWriterといったクラスを使いますし、そうでないデータの場合にはFileInuptStream/FileOutputStreamといったクラスを利用します。
androidは、Java SEに用意されている多くのクラスが利用できますので、こうしたファイルアクセス関係のクラスのインスタンスを作り、利用することができます。が、通常はそのようなやり方はしません。理由はいくつかあります。
1つは、利用が面倒だからです。androidでは、プログラムがファイルを保管したりして利用できる場所というのが厳格に決められています。それ以外の場所にアクセスしようとするとエラーになってしまいます。そうしたことをきちんと理解した上で利用しないといけないので、ちょっと面倒くさい。
もう1つは、もっと簡単なやり方があるからです。それは、Activityに用意されているメソッドを利用するものです。Activityには「openFileInput」「openFileOutput」といったメソッドがあり、これらを使って簡単にFileInputStream/FileOutputStreamを取得することができます。こちらを使うと、先ほどの「プログラムが保存できる場所云々」といった問題は起こりません(自動的に、あらかじめ用意された保存可能な場所にファイルを置いてくれます)。
androidは、Java SEに用意されている多くのクラスが利用できますので、こうしたファイルアクセス関係のクラスのインスタンスを作り、利用することができます。が、通常はそのようなやり方はしません。理由はいくつかあります。
1つは、利用が面倒だからです。androidでは、プログラムがファイルを保管したりして利用できる場所というのが厳格に決められています。それ以外の場所にアクセスしようとするとエラーになってしまいます。そうしたことをきちんと理解した上で利用しないといけないので、ちょっと面倒くさい。
もう1つは、もっと簡単なやり方があるからです。それは、Activityに用意されているメソッドを利用するものです。Activityには「openFileInput」「openFileOutput」といったメソッドがあり、これらを使って簡単にFileInputStream/FileOutputStreamを取得することができます。こちらを使うと、先ほどの「プログラムが保存できる場所云々」といった問題は起こりません(自動的に、あらかじめ用意された保存可能な場所にファイルを置いてくれます)。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
※関連コンテンツ