2011-09-24 8 views
0

申し訳ありませんが、これはかなり長い質問かもしれませんが、実際にはint/byte/stringデータ型をAndroidに保存するにはどうすればよいですか?Androidでint/byte/stringデータ型を保存する

私は内部メモリ(ノートではなく、外部または他の何か)に文字列を保存することを知って、私はこのような何かをしなければならない:

文字列filename =「hello_fileを」。

文字列= "hello world!";

FileOutputStream fos = openFileOutput(FILENAME、Context.MODE_PRIVATE);

fos.write(string.getBytes());

fos.close();

ファイルを保存するために、そして:

int型saveTest = fos.read();

fos.close();

他のアクティビティなどからファイルを読み取る。 (これは正しいですか?)

ファイルをint/byteデータファイルとして保存して読みたい場合はどうすればよいですか?これは可能ですか?そして私はどうすればそれをすることができるでしょうか?

+0

SharedPreferencesを代わりに使用してみませんか?これは、ファイルの保存/ロードを自動化し、基本データ型を格納するように設計されています。 –

+0

私は、彼がウィジェットの中に保存したものにアクセスしている間に、主な活動の中に彼のファイルを保存できるようにしたい。私はsharedprefリソースが私にそうすることを可能にするとは思わない... –

+0

SharedPreferencesはこのシナリオでは完全に動作するだろう!ウィジェットプロバイダで 'getSharedPreferences'を呼び出して、保存されたデータを取得することができます。 –

答えて

2

javadocsも役立つかもしれません!

希望すると便利です。

+0

「シリアライザブルまたはバイトデータ」とはどういう意味ですか?それはint countですか? –

+0

オブジェクトがシリアライズ可能なオブジェクトを実装する場合、objectoutputクラスを使用してオブジェクトを保存できます。上記の例を編集して、intをどのように保存するかを示しました。 – Ljdawson

+0

シリアライズ可能なオブジェクトについて詳しく知りたい方は、これをお読みください:http://java.sun.com/developer/technicalArticles/Programming/serialization/ – Ljdawson

0

オブジェクトを読み取る場合は、FileInputStreamからObjectInputStreamを作成します。ファイルをバイナリ形式で読み取る場合は、byte[]で動作するreadメンバ関数を使用できます。例えば、あなたがそれらをシリアル化するためのObjectOutputクラスを使用することができ、あなたのオブジェクトを保存するには:

クラス例が直列化またはバイトのデータを実装する任意のオブジェクト可能性があり
// Example object which implements Serializable 
Example example = new Example(); 

// Save an object 
ObjectOutput out = new ObjectOutputStream(new FileOutputStream(new File(getCacheDir(),"")+"cacheFile.srl")); 
out.writeObject(new Integer(YOUR_INT)); 
out.close(); 


// Load in an object 
ObjectInputStream in = new ObjectInputStream(new FileInputStream(new File(new File(getCacheDir(),"")+"cacheFile.srl"))); 
Integer example_loaded = (Integer) in.readObject(); 
in.close(); 

+0

これを行う方法の詳細はありますか?私はあなたがここで何をしているのか本当に理解していません。S –

+0

@RenoYeo:オブジェクトまたは生のバイトを読み込みますか? –

+0

Strings、Int、Bytesのようなオブジェクトを意味しますか?申し訳ありません、私は少しプログラミングの新しいです、私はまだ技術的なロープを学んでいます。私は実際に何をしようとしているのかを知りたい場合は、メインのアクティビティを含むファイルを保存し、ウィジェットから自動的にファイルにアクセスしたいと思います。 –

関連する問題