Android 应用开发:使用 EditText 和 Button 实现数据存储和读取

本示例展示如何在 Android 应用中使用 EditText 和 Button 实现数据存储和读取功能。用户输入内容后,点击保存按钮将数据写入文件,点击读取按钮则从文件中读取数据并显示在文本框中。

MainActivity.java

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.TextView;
import android.widget.Toast;

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStreamReader;

public class MainActivity extends AppCompatActivity {

    EditText editText;
    Button saveButton, readButton;
    TextView textView;

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

        editText = findViewById(R.id.editText);
        saveButton = findViewById(R.id.saveButton);
        readButton = findViewById(R.id.readButton);
        textView = findViewById(R.id.textView);

        saveButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String data = editText.getText().toString();
                saveData(data);
                Toast.makeText(MainActivity.this, '数据存储成功', Toast.LENGTH_SHORT).show();
            }
        });

        readButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String data = readData();
                textView.setText(data);
            }
        });
    }

    private void saveData(String data) {
        try {
            FileOutputStream fos = openFileOutput('data.txt', Context.MODE_PRIVATE);
            fos.write(data.getBytes());
            fos.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    private String readData() {
        String data = '';
        try {
            FileInputStream fis = openFileInput('data.txt');
            InputStreamReader isr = new InputStreamReader(fis);
            BufferedReader br = new BufferedReader(isr);
            String line;
            while ((line = br.readLine()) != null) {
                data += line;
            }
            br.close();
            isr.close();
            fis.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return data;
    }
}

activity_main.xml

<?xml version='1.0' encoding='utf-8'?>
<LinearLayout xmlns:android='http://schemas.android.com/apk/res/android'
    xmlns:tools='http://schemas.android.com/tools'
    android:orientation='vertical'
    android:layout_width='match_parent'
    android:layout_height='match_parent'
    android:padding='16dp'
    tools:context='.MainActivity'>

    <EditText
        android:id='@+id/editText'
        android:layout_width='match_parent'
        android:layout_height='wrap_content'
        android:hint='输入内容'
        android:inputType='text' />

    <Button
        android:id='@+id/saveButton'
        android:layout_width='match_parent'
        android:layout_height='wrap_content'
        android:text='保存' />

    <TextView
        android:id='@+id/textView'
        android:layout_width='match_parent'
        android:layout_height='wrap_content'
        android:layout_marginTop='16dp'
        android:padding='16dp'
        android:text='' />

    <Button
        android:id='@+id/readButton'
        android:layout_width='match_parent'
        android:layout_height='wrap_content'
        android:text='读取数据' />

</LinearLayout>

使用方法

  1. 在 EditText 中输入内容。
  2. 点击保存按钮,数据将写入到名为 'data.txt' 的文件中,并弹出 Toast 提示“数据存储成功”。
  3. 点击读取按钮,将从 'data.txt' 文件中读取数据,并显示在 TextView 中。

代码说明

  • saveData(String data) 函数将数据写入到 'data.txt' 文件中。
  • readData() 函数从 'data.txt' 文件中读取数据并返回。
  • 在 activity_main.xml 文件中定义了 EditText、Button 和 TextView 等控件。
  • 在 MainActivity.java 文件中,使用 setOnClickListener 方法为按钮添加点击事件监听器。

注意

  • 该代码使用 openFileOutput('data.txt', Context.MODE_PRIVATE) 方法将数据存储在私有文件中,只有当前应用可以访问该文件。
  • 可以修改 'data.txt' 文件名和存储路径,以满足不同需求。
  • 在实际应用中,可以将数据存储到数据库或其他数据存储方式,以实现更复杂的功能。

总结

本示例展示了如何在 Android 应用中使用 EditText 和 Button 实现数据存储和读取功能,并提供了一些代码说明和注意事项。希望能够帮助你了解 Android 应用开发中的数据存储和读取操作。

Android 应用开发:使用 EditText 和 Button 实现数据存储和读取

原文地址: https://www.cveoy.top/t/topic/mQuk 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录