スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

タグ :

   印刷ボタン       この記事に拍手する       このエントリーをはてなブックマークに追加

Return to page top

  • Comments (Close): -
  • TrackBack (Close): -

FileWriter/FileReader

今回は、標準的なJavaを使ってテキストファイルの書き出し/読み込みを行います。

Androidにおいては、標準的なJavaのクラスよりもAndroid仕様にカスタマイズされたクラスが用意されていますが、とりあえずは標準を使ってみます。

使うクラスは FileWriter/FileReader です。FileWriter/FileReader はバイトデータを文字列に変換するため、テキストファイルを扱うのに向いています。

まず main.xmlですが、EditTextだけを配置したシンプルなものです。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
</EditText>
</LinearLayout>


次に、HelloAndroid.javaです。

package sample.basic;

import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

import android.app.Activity;
import android.os.Bundle;
import android.widget.EditText;

public class HelloAndroid extends Activity{

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

String path="/data/data/" + this.getPackageName() + "/files/sample.txt";

try{
FileWriter fw=new FileWriter(path);
String text="Androidプログラミング";
fw.write(text);
fw.close();
}catch(IOException e){
}

try{
FileReader fr=new FileReader(path);
EditText editText1=(EditText)findViewById(R.id.editText1);
char buffer[]=new char[100];
fr.read(buffer);
editText1.setText(new String(buffer).trim());
fr.close();
}catch(IOException e){
}
}
}


Androidにおけるファイル操作で特徴的なのは、プログラムがファイルを保存できる場所が "/data/data/パッケージ名/files/" という場所に限られるということです。

パッケージ名の取得には、getPackageName()メソッドを使いました。

abstract String getPackageName()



また、外部ファイルからデータを読み込んで EditTextで表示する際に、文字列の先頭と末尾に空白文字が出力されてしまうことがあるため、Stringクラスの trim()メソッドで空白文字を除去して整形しています。

20111120_2

関連記事
スポンサーサイト

タグ :

   印刷ボタン       この記事に拍手する       このエントリーをはてなブックマークに追加

Return to page top

Comments:

Comment Form
Only inform the site author.

Trackback+Pingback:

TrackBack URL for this entry
http://androidhacker.blog94.fc2.com/tb.php/70-4354c526
  • 閉じるボタン
レファレンス
月別アーカイブ
リンク
カテゴリ
QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。