在 Android 中,文件存储是一种常见的数据存储方式。你可以使用文件存储来保存应用程序的数据,例如用户配置、文本文件等。下面是一个简单的示例,演示如何在 Android 中进行文件存储读写操作。

写入文件:
import android.content.Context;

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

public class FileHelper {

    public static void writeToFile(Context context, String filename, String data) {
        try {
            FileOutputStream fos = context.openFileOutput(filename, Context.MODE_PRIVATE);
            fos.write(data.getBytes());
            fos.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

在这个例子中,writeToFile 方法接收一个 Context 对象(通常是当前活动或服务的上下文)、一个文件名和要写入文件的数据。它使用 openFileOutput 打开一个文件输出流,并使用 Context.MODE_PRIVATE 标志指定文件模式为私有,确保只有你的应用程序可以访问这个文件。然后,它将数据写入文件并关闭流。

读取文件:
import android.content.Context;

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

public class FileHelper {

    public static String readFromFile(Context context, String filename) {
        StringBuilder stringBuilder = new StringBuilder();

        try {
            FileInputStream fis = context.openFileInput(filename);
            InputStreamReader isr = new InputStreamReader(fis);
            BufferedReader bufferedReader = new BufferedReader(isr);

            String line;
            while ((line = bufferedReader.readLine()) != null) {
                stringBuilder.append(line).append('\n');
            }

            fis.close();
        } catch (IOException e) {
            e.printStackTrace();
        }

        return stringBuilder.toString();
    }
}

在这个例子中,readFromFile 方法接收一个 Context 对象和文件名,然后尝试从指定文件中读取数据。它使用 openFileInput 打开一个文件输入流,然后使用 InputStreamReader 和 BufferedReader 来读取文件内容。最后,它将读取的内容返回为一个字符串。

在 Activity 中使用:
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

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

        // 写入文件
        FileHelper.writeToFile(this, "example.txt", "Hello, this is a test.");

        // 读取文件
        String content = FileHelper.readFromFile(this, "example.txt");
        // 在这里使用文件内容,比如显示在 TextView 中
        // textView.setText(content);
    }
}

在这个例子中,我们在 onCreate 方法中调用 writeToFile 方法写入一个字符串到文件 "example.txt" 中,然后调用 readFromFile 方法读取文件内容并将其存储在 content 变量中。你可以根据你的需要修改这些代码以适应你的应用程序逻辑。


转载请注明出处:http://www.zyzy.cn/article/detail/15187/Android