implementation 'com.google.android.gms:play-services-basement:17.0.0' <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> import android.content.Context; import android.util.Log; import com.google.android.gms.common.util.IOUtils; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class DataPersistence { private static final String TAG = "DataPersistence"; private static final String FILE_NAME = "data.txt"; public static boolean saveData(Context context, String data) { try { File file = new File(context.getExternalFilesDir(null), FILE_NAME); FileOutputStream outputStream = new FileOutputStream(file); outputStream.write(data.getBytes()); outputStream.close(); return true; } catch (IOException e) { Log.e(TAG, "Failed to save data: " + e.getMessage()); return false; } } public static String loadData(Context context) { try { File file = new File(context.getExternalFilesDir(null), FILE_NAME); FileInputStream inputStream = new FileInputStream(file); byte[] buffer = new byte[(int) file.length()]; inputStream.read(buffer); inputStream.close(); return new String(buffer); } catch (IOException e) { Log.e(TAG, "Failed to load data: " + e.getMessage()); return null; } } } import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class MainActivity extends AppCompatActivity { private EditText editText; private Button saveButton; private Button loadButton; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); editText = findViewById(R.id.edit_text); saveButton = findViewById(R.id.save_button); loadButton = findViewById(R.id.load_button); saveButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String data = editText.getText().toString(); if (DataPersistence.saveData(MainActivity.this, data)) { Toast.makeText(MainActivity.this, "Data saved", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(MainActivity.this, "Failed to save data", Toast.LENGTH_SHORT).show(); } } }); loadButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String data = DataPersistence.loadData(MainActivity.this); if (data != null) { editText.setText(data); Toast.makeText(MainActivity.this, "Data loaded", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(MainActivity.this, "Failed to load data", Toast.LENGTH_SHORT).show(); } } }); } }


上一篇:
下一篇:
切换中文