티스토리 뷰
MODE_PRIVATE | 혼자만 사용하는 배타적인 모드로 파일 생성 .. (디폴트) |
MODE_APPEND | 파일이 이미 존재할 경우 덮어쓰기 모드로 열지 않고 추가 모드로 연다. ( 기존 내용에 추가 ) |
MODE_WORLD_READABLE | 다른 응용 프로그램이 읽을 수 있도록 허용 |
MODE_WORLD_WRITEABLE | 다른 응용 프로그램이 쓸 수 있도록 허용 |
FileOutputStreamfos = openFileOutput("text.txt", Context.MODE_WORLD_READABLE);
String str = mEdit.getText().toString();
fos.write(str.getBytes());
fos.close();
mEdit.setText("Write Success");
파일 경로 : /data/data/패키지명/files/ 디렉토리 ..
- 직접적으로 확인은 불가하다 .. ( Root Explorer(App) 이용해서 확인 .. 루트 권한 필요 )
// 파일 읽기
FileInputStream fis = openFileInput("text.txt");
byte[] data = new byte[fis.available()];
while(fis.read(data) != -1){}
fis.close();
mEdit.setText(new String(data));
*SD Card 이용 I/O
기본 java I/O 와 동일
// 파일 저장
String sdPath = Environment.getExternalStorageDirectory().getAbsolutePath();
File dir = new File(sdPath, "testing");
dir.mkdir();
File file = new File(dir, "file.txt");
FileOutputStream fos = new FileOutputStream(file);
String str = mEdit.getText().toString();
fos.write(str.getBytes());
fos.close();
mEdit.setText("write success");
// 파일 읽기
String sdPath = Environment.getExternalStorageDirectory().getAbsolutePath();
FileInputStream fis = new FileInputStream(sdPath + "/testing/file.txt");
byte[] data = new byte[fis.available()];
while(fis.read(data)!=-1){}
fis.close();
mEdit.setText(new String(data));
※ SD Card 디렉토리 생성시 에러상황 .. 해결법 ..
위와 같이 코드를 이용해 디렉토리 생성시 에러가 발생 할 경우 아래의 내용을 추가해야한다..
AndroidManifest.xml
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
SD card의 파일을 엑세스 하려면 Manifest에 퍼미션을 지정해야한다.
※ SD Card 관련 정보 보기
1. Environment.getExternalStorageState()
SD card 현재 상태 .. mounted : 읽고 쓰기 가능한 상태 .. unmounted : 불가능 상태
2. Environment.getExternalStorageDirectory().getAbsolutePath()
SD card 가 마운트된 경로 ..
3. Environment.getRootDirectory().getAbsolutePath()
4. Environment.getDataDirectory().getAbsolutePath()
5. Environment.getDownloadCacheDirectory().getAbsolutePath()
'Computer > Android' 카테고리의 다른 글
android uses-permission (0) | 2013.06.07 |
---|---|
Convert drawable to bitmap (0) | 2013.05.31 |
Android WebView 예제 (0) | 2013.05.27 |
Bitmap Merge (0) | 2013.05.26 |
안드로이드 앱 개발자가 제안하는 디자인 방법론 - ANDROID UI TIPS (0) | 2013.05.17 |