亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android如何實現文件存儲

發布時間:2021-11-09 15:49:50 來源:億速云 閱讀:179 作者:iii 欄目:開發技術

這篇文章主要講解了“Android如何實現文件存儲”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Android如何實現文件存儲”吧!

1、文件存儲案例

public class TestActivity extends AppCompatActivity {
    private EditText mFileEdit;

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

    private void initView() {
        mFileEdit = findViewById(R.id.fileEdit);
        String inputText = load();
        if (!TextUtils.isEmpty(inputText)) {
            mFileEdit.setText(inputText);
            mFileEdit.setSelection(inputText.length());
            Toast.makeText(this, "Restoring succeeded", Toast.LENGTH_SHORT).show();
        }
    }


    @Override
    protected void onDestroy() {
        super.onDestroy();
        String inputText = mFileEdit.getText().toString();
        save(inputText);
    }

    //    從文件中讀取數據
    public void save(String inputText) {
        FileOutputStream outputStream = null;
        BufferedWriter writer = null;
        try {
            outputStream = openFileOutput("data", Context.MODE_PRIVATE);
            writer = new BufferedWriter(new OutputStreamWriter(outputStream));
            writer.write(inputText);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                if (writer != null) {
                    writer.close();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

    //    將文件存儲到文件中
    public String load() {
        FileInputStream inputStream = null;
        BufferedReader reader = null;
        StringBuilder builder = new StringBuilder();
        try {
            inputStream = openFileInput("data");
            reader = new BufferedReader(new InputStreamReader(inputStream));
            String line = "";
            while ((line = reader.readLine()) != null) {
                builder.append(line);
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (reader != null) {
                try {
                    reader.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        return builder.toString();
    }
}

運行結果,Pass

2、SharePreferences存儲案例

public class SharePfsActivity extends AppCompatActivity implements View.OnClickListener {
    private static final String TAG = "SharePfsActivity";
    private Button mSharedData;
    private Button mRestoreData;

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

    private void initView() {
        mSharedData = findViewById(R.id.sharedBtn);
        mSharedData.setOnClickListener(this);
        mRestoreData = findViewById(R.id.restoreBtn);
        mRestoreData.setOnClickListener(this);
    }

    @Override
    public void onClick(View view) {
        switch (view.getId()) {
            case R.id.sharedBtn:
                sharedData();
                break;
            case R.id.restoreBtn:
                restoreData();
                break;
            default:
                break;
        }
    }

    private void sharedData() {
        SharedPreferences.Editor editor = getSharedPreferences("shareData", MODE_PRIVATE).edit();
        editor.putString("name", "功勛");
        editor.putString("type", "電影");
        editor.apply();
    }

    private void restoreData() {
        SharedPreferences preferences = getSharedPreferences("shareData", MODE_PRIVATE);
        String name = preferences.getString("name", "");
        String type = preferences.getString("type", "");
        Log.d(TAG, "名稱:" + name + ",類型:" + type);
    }
}

運行結果,Pass

Android如何實現文件存儲

3、登錄頁面,實現記住username和pwd功能

activity_login.xml文件

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="vertical">

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="用戶名:" />

        <EditText
            android:id="@+id/username"
            android:layout_width="240dp"
            android:layout_height="wrap_content" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="密    碼:" />

        <EditText
            android:id="@+id/pwd"
            android:layout_width="240dp"
            android:layout_height="wrap_content" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <CheckBox
            android:id="@+id/remember"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Remeber password" />
    </LinearLayout>

    <Button
        android:id="@+id/login"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="登錄" />

</LinearLayout>

LoginActivity .class

public class LoginActivity extends AppCompatActivity {
    private static final String TAG = "LoginActivity";
    private Button mLogin;
    private CheckBox mRemember;
    private EditText mUsername;
    private EditText mPwd;
    private SharedPreferences mSharedPs;
    private SharedPreferences.Editor mEditor;

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

    private void initView() {
        mSharedPs = PreferenceManager.getDefaultSharedPreferences(this);
        mUsername = findViewById(R.id.username);
        mPwd = findViewById(R.id.pwd);
        mRemember = findViewById(R.id.remember);
        mLogin = findViewById(R.id.login);
        boolean isRemember = mSharedPs.getBoolean("remember_pwd", false);
        if (isRemember) {
            // 將賬號和密碼都設置到文本框中
            mUsername.setText(mSharedPs.getString("username", ""));
            mPwd.setText(mSharedPs.getString("pwd", ""));
            mRemember.setChecked(true);
        }
        mLogin.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String username = mUsername.getText().toString();
                String pwd = mPwd.getText().toString();
                // 如果賬號:admin,密碼:123456,就認為登錄成功
                if (username.equals("admin") && pwd.equals("123456")) {
                    mEditor = mSharedPs.edit();
                    // 檢查復選框是否被選中
                    if (mRemember.isChecked()) {
                        mEditor.putString("username", username);
                        mEditor.putString("pwd", pwd);
                        mEditor.putBoolean("remember_pwd", true);
                    } else {
                        mEditor.clear();
                    }
                    mEditor.apply();
                    Intent intent = new Intent(LoginActivity.this, MainActivity.class);
                    startActivity(intent);
                    finish();
                } else {
                    Log.d(TAG, "用戶名或密碼輸入錯誤,請重新輸入");
                }
            }
        });
    }
}

運行結果,Pass

Android如何實現文件存儲

感謝各位的閱讀,以上就是“Android如何實現文件存儲”的內容了,經過本文的學習后,相信大家對Android如何實現文件存儲這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

旅游| 平阴县| 泸西县| 大洼县| 晋中市| 朔州市| 星子县| 南充市| 诏安县| 定安县| 马公市| 舞阳县| 城固县| 河北区| 邹平县| 澄江县| 安庆市| 龙里县| 庄浪县| 沁水县| 锡林浩特市| 甘泉县| 延庆县| 遵化市| 中宁县| 宁强县| 天等县| 岱山县| 呼和浩特市| 汪清县| 庆阳市| 庆云县| 蚌埠市| 内丘县| 安化县| 沁源县| 江永县| 黔南| 南昌市| 杂多县| 兴国县|