<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" > <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button" /> <Button android:id="@+id/button2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button" /> <Button android:id="@+id/button3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button" /> </LinearLayout> <ScrollView android:id="@+id/scrollView1" android:layout_width="match_parent" android:layout_height="match_parent" > <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" > <TextView android:id="@+id/textView1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:contentDescription="텍스트를 출력할 뷰" /> </LinearLayout> </ScrollView> </LinearLayout>
package com.gusfree.fileio; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import org.apache.http.util.ByteArrayBuffer; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.TextView; public class FileIoActivity extends Activity implements OnClickListener{ TextView tv; Button btn1,btn2,btn3; ByteArrayBuffer bab; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //뷰찾고 리스너 세팅하기 tv=(TextView) findViewById(R.id.textView1); btn1=(Button) findViewById(R.id.button1); btn2=(Button) findViewById(R.id.button2); btn3=(Button) findViewById(R.id.button3); btn1.setOnClickListener(this); btn2.setOnClickListener(this); btn3.setOnClickListener(this); } int i=0; @Override public void onClick(View v) { switch(v.getId()){ case R.id.button1: //text파일 내용읽어서 화면출력 //Res폴더/raw/test.txt 가져오기 InputStream is = getResources().openRawResource(R.raw.text); int k=0; // read() 메서드는 한 바이트씩 읽어서 리턴, // 더이상 읽을 내용이 없으면 -1을 리턴합니다. bab=new ByteArrayBuffer(50); try{ //while( ( k=is.read() )!= -1 ){ for( ; ; ) { k=is.read(); if(k==-1){ break; } bab.append(k); } // 다 읽었다. //바이트배열버퍼 -> 스트링으로 변환시키기 byte[] b = bab.toByteArray(); String content = new String(b); tv.setText(content); }catch(Exception e){ } break; case R.id.button2: //읽은 데이터를 파일로 저장하기 i++; FileOutputStream fos = null; try { fos = this.openFileOutput("test"+i+".txt",Activity.MODE_PRIVATE); fos.write(bab.toByteArray()); //save fos.flush() ; // option 버퍼를 비워라 fos.close(); // required 닫아라. } catch (Exception e) { // window/ open perspective/ DDMS 추가 // DDMS / Explorer / data/data/패키지/files/ } finally{ try{ if(fos!=null) fos.close(); } catch(Exception e){ } } break; case R.id.button3: break; } } }
가운데 버튼(R.id.button2)를 눌렀을때.......
DDMS((Dalvik Debug Monitor Service)를 보면
// DDMS / Explorer / data/data/패키지/files/ 생성되는 것을 볼 수 있다.
'Android > 2012.04월 강좌' 카테고리의 다른 글
8일차 숙제 (0) | 2012.05.07 |
---|---|
8일차 FileIO 3 - 저장된 파일 가져오기 (0) | 2012.05.07 |
8일차 FileIO - text파일 내용읽어서 화면출력 (2) | 2012.05.07 |
8일차 Draw 3 TouchEvent (0) | 2012.05.07 |
8일차 Draw 2 TouchEvent (0) | 2012.05.07 |