<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:a="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    a:layout_width="match_parent"
    a:orientation="vertical"
    a:layout_height="match_parent">
    <EditText
        a:layout_width="match_parent"
        a:layout_height="wrap_content"
        a:id="@+id/Input_EditText" />
    <Button
        a:text="Save"
        a:layout_width="match_parent"
        a:layout_height="wrap_content"
        a:id="@+id/Save_Button" />
    <Button
        a:text="Load"
        a:layout_width="match_parent"
        a:layout_height="wrap_content"
        a:id="@+id/Load_Button" />
</LinearLayout>
using Android.App;
using Android.Content;
using Android.OS;
using Android.Support.V7.App;
using Android.Widget;
namespace pav.DataStore.Activities
{
    [Activity(Label = "@string/app_name", Theme = "@style/AppTheme", MainLauncher
= true)]
    public class MainActivity : AppCompatActivity
    {
        EditText Input_EditText;
        ISharedPreferences Data;
        protected override void
OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            // Set our view
from the "main" layout resource
           
SetContentView(Resource.Layout.activity_main);
            base.FindViewById<Button>(Resource.Id.Save_Button).Click +=
SaveButton_Click;
            base.FindViewById<Button>(Resource.Id.Load_Button).Click +=
LoadButton_Click;
            this.Input_EditText = base.FindViewById<EditText>(Resource.Id.Input_EditText);
            //Create a
private data file to store our value key pairs in
            Data =
Application.Context.GetSharedPreferences("data", FileCreationMode.Private);
        }
        private void
LoadButton_Click(object sender,
System.EventArgs e)
            =>Input_EditText.Text =
Data.GetString("Input", null);
        private void
SaveButton_Click(object sender,
System.EventArgs e)
        {
            //transactional
            var data = Data.Edit();
            data.PutString("Input", Input_EditText.Text);
            data.Commit();
        }
    }
}
in the above we wire up the logic to save a value key pair with the key "Input" to a private file on our device
- private: File creation mode: the default mode, where the created file can only be accessed by the calling application (or all applications sharing the same user ID).
- WorldReadable: any package can read file
- WorldWriteable: any package can write to it
- EnableWriteAheadLogging: Database open flag: when set, the database is opened with write-ahead logging enabled by default.
- Append:File creation mode: for use with Android.Content.Context.OpenFileOutput(System.String, Android.Content.FileCreationMode), if the file already exists then write data to the end of the existing file instead of erasing it.
