Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Xcode
- Example
- 앱스토어
- error
- Bitcode
- loop
- swift3
- UIView
- swift
- 신도림 테크노마트
- 보라카이
- Check
- GCD
- 신도림
- 스마트폰
- UITableView
- 아이폰7
- setting
- 포켓몬 GO
- 샘플
- LG유플러스
- 포켓볼
- 얻는법
- afterdelay
- 페이백
- IOS
- simulator
- push
- 해몽
- 공략
Archives
- Today
- Total
도래울
[Android] 파일 입출력 하기 본문
안드로이드 자체에는 파일관리 기능이 따로 포함되어 있지 않다. 대신 파일 시스템은 리눅스 것을 그대로 사용하며 라이브러리는 자바를 사용한다.
안드로이드 보안상 이유로 임의 위치의 파일을 아무나 읽고 쓸수 없도록 되어 있는데 이러한 제한을 위해 Context클래스는 보안이 적용된 파일 관리 메소드를 별도 제공한다.
아래는 파일 오픈 시 사용하는 메소드 이다.
FileOutputStream openFileOutput (String name, int mode)
FileInputStream openFileInput (String name)
FileInputStream openFileInput (String name)
파일의 위치는 /data/data/패키지명/files 디렉토리로 정해져 있으며 임의 경로의 파일을 마음대로 열 수 없다.
파일 생성시에는 아래 mode 중 하나를 지정한다.
mode | 설명 |
MODE_PRIVATE | 혼자만 사용하는 배타적인 모드로 파일 생성. 이 MODE가 DEFAULT이다. |
MODE_APPEND | 파일이 이미 존재할 경우 덮어쓰기 모드가 아닌 추가 모드로 연다. 이후 기록되는 내용은 기존 내용 뒤에 덧붙혀진다. |
MODE_WORLD_READABLE | 다른 응용 프로그램이 파일을 읽을 수 있게 허용한다. |
MODE_WORLD_WRITEABLE | 다른 응용 프로그램이 파일을 기록할 수 있게 허용한다. |
아래 메소드는 파일을 삭제하거나 파일 목록을 구한다.
boolean deleteFile (String name)
String[] fileList()
String[] fileList()
아래 소스는 파일 생성, 읽기 까지 구현된 소스이다.
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <Button android:id="@+id/save" android:text="Save" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <Button android:id="@+id/load" android:text="Load" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <EditText android:id="@+id/edit" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout> |
public class FileIOActivity extends Activity { EditText mEdit; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mEdit = (EditText)findViewById(R.id.edit); findViewById(R.id.save).setOnClickListener(mClickListener); findViewById(R.id.load).setOnClickListener(mClickListener); } View.OnClickListener mClickListener = new View.OnClickListener() { public void onClick(View v) { // TODO Auto-generated method stub switch(v.getId()) { case R.id.save : try { FileOutputStream fos = openFileOutput("test.txt", Context.MODE_WORLD_READABLE); String str = "Android File IO Test"; fos.write(str.getBytes()); fos.close(); mEdit.setText("write success"); } catch(Exception e) { } break; case R.id.load : try { FileInputStream fis = openFileInput("test.txt"); byte[] data = new byte[fis.available()]; while(fis.read(data) != -1) {;} fis.close(); mEdit.setText(new String(data)); } catch(Exception e) { } break; } } }; } |
실제 테스트 해보니 파일 생성해서 Android File IO Test 라는 문자열을 test.txt 라는 파일에 입력하는 것과 test.txt 파일을 읽어서 아래에 있는 EditBox에 출력해서 보여주는 것까지 성공하였다.
'개발 > Android' 카테고리의 다른 글
안드로이드 2.3, 진저브레드에서 지원하는 특징을 모두 알아보자 (0) | 2016.02.05 |
---|---|
Android GPS State 확인 (0) | 2016.02.05 |
[안드로이드] Android 에서 현재 화면 top 에 있는 activity 알아내기. (0) | 2016.02.05 |
[Android] Thread 구현하기 1/2 (with ProgressBar) (0) | 2016.02.05 |
[안드로이드] Activity가 실행되는 동안 화면 안꺼지게 하기 (0) | 2016.02.05 |
Comments