본문 바로가기
학교 강의/안드로이드 교양

14주차

by hoshi03 2023. 12. 7.

스피너 - 수업시간 15분정도 빠르게 하고 넘어갔는데 못들었음

 

파일 입출력 - 내장 메모리에 txt 파일 저장하고 읽어오기를 했다

 

! 파일 입출력 시험문제

edittext로 사용자 입력을 읽어서 내장 메모리에 저장하고 그걸 읽어오는 코드, 온클릭을 잘 읽어두자

 

 

package com.example.aap;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;


public class MainActivity extends AppCompatActivity {

    Button btnwrite, btnread;
    EditText editText;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        btnwrite = findViewById(R.id.btnwrite);
        btnread = findViewById(R.id.btnread);
        editText = findViewById(R.id.text);

        btnwrite.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                try {
                    FileOutputStream outfs = openFileOutput("file.txt",Context.MODE_PRIVATE);
                    String dialog = editText.getText().toString();
                    outfs.write(dialog.getBytes());
                    outfs.close();
                    Toast.makeText(getApplicationContext(), "file.txt 생성", Toast.LENGTH_SHORT).show();
                } catch (IOException e){ }
            }
        });

        btnread.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                try {
                    FileInputStream infs = openFileInput("file.txt");
                    byte[] txt = new byte[30];
                    infs.read(txt);
                    String str = new String(txt);
                    Toast.makeText(getApplicationContext(), str, Toast.LENGTH_SHORT).show();
                    editText.setText(str);
                    infs.close();
                } catch (IOException e){
                    Toast.makeText(getApplicationContext(), "파일 없음", Toast.LENGTH_SHORT).show();
                }
            }
        });
    }

}

 

 

액티비티, 레이아웃 만들기

 

프로젝트 폴더에 new - activiry - emptyview로 만들면 매니페스트에 자동으로 추가된다

인텐트로 페이지 이동하는 것을 온클릭에 추가해서 액티비티를 넘어다녀보자

 

Intent intent = new Intent(MainActivity.this, ActivitySecond.class);
startActivity(intent);
                
// 세컨드액티비티를 종료하면 메인 페이지로 돌아간다                
finish();

 

 

 

+ 인텐트에 데이터를 넣어서 메인액티비티에서 세컨 엑티비티로 데이터 넘겨주기 해보기

숙제 실습 10-1 해오기, if문 사용

 

'학교 강의 > 안드로이드 교양' 카테고리의 다른 글

안드교양 15주차  (0) 2023.12.14
안드교양 13주차  (1) 2023.11.30
안드교양 12주차  (2) 2023.11.23
안드교양 11주차  (0) 2023.11.16
안드교양 10주차  (0) 2023.11.09