activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<EditText
android:id="@+id/editText"
android:layout_width="381dp"
android:layout_height="470dp"
android:ems="10"
android:hint="memo sheet"
android:inputType="textPersonName|text"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="50dp"
android:layout_marginTop="48dp"
android:text="읽기"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/editText" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="48dp"
android:layout_marginEnd="50dp"
android:text="쓰기"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/editText" />
</androidx.constraintlayout.widget.ConstraintLayout>
MainActivity.java
package com.example.myapplication;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import androidx.appcompat.app.AppCompatActivity;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class MainActivity extends AppCompatActivity {
String filename = "memoTest";
EditText edtText;
int number = 1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
edtText = (EditText) findViewById(R.id.editText);
Button readButton = (Button) findViewById(R.id.button);
readButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
try {
String filename2 = filename + number + ".txt";
FileInputStream inputfile = openFileInput(filename);
byte[] buffer = new byte[inputfile.available()];
inputfile.read(buffer);
edtText.setText(new String(buffer));
inputfile.close();
} catch(IOException e) {
}
}
});
Button writeButton = (Button) findViewById(R.id.button2);
writeButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
try {
String filename2 = filename + number + ".txt";
FileOutputStream outputfile = openFileOutput(filename2, Context.MODE_PRIVATE);
outputfile.write(edtText.getText().toString().getBytes());
outputfile.close();
number++;
} catch (IOException e) {
}
}
});
}
}
memo sheet에 원하는 내용을 입력하고 쓰기 버튼을 누르면 디바이스 내부 저장소에 txt 파일로 저장이 된다.
읽기 버튼을 누르면 memo sheet에 가장 최근에 작성한 메모가 불러와진다.
안드로이드 스튜디오에서 [View -> Tool Windows -> Device File Explorer]를 열면 디바이스 내의 파일을 볼 수 있다.
여기서 [data -> data -> com.example.(패키지 이름) -> files] 디렉토리에 메모가 저장된다.
'안드로이드 Android' 카테고리의 다른 글
[모바일프로그래밍] 11-4 SQLite를 활용한 파일 처리 (0) | 2020.11.22 |
---|---|
[모바일프로그래밍] 11-3 외부 저장 공간(SD 카드) 사용 (0) | 2020.11.22 |
[모바일프로그래밍] 10-5 방송 수신자 (0) | 2020.11.08 |
[모바일프로그래밍] 10-4 연결 타입 서비스 bind service (0) | 2020.11.08 |
[모바일프로그래밍] 10-3 Intent service class (0) | 2020.11.08 |