美文网首页
将数据存储到文件中

将数据存储到文件中

作者: 昨天剩下的一杯冷茶 | 来源:发表于2018-10-24 10:29 被阅读2次
//布局文件
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="wrap_content"
    android:layout_height="match_parent">

    <EditText android:id="@+id/edit"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:hint="Type something here"/>
</LinearLayout>


//例子
    private EditText edit;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        edit = (EditText)findViewById(R.id.edit);

        String inputText = load();
        if (!TextUtils.isEmpty(inputText)){
            edit.setText(inputText);
            edit.setSelection(inputText.length());
            Toast.makeText(this,"Restoring succeede",Toast.LENGTH_SHORT).show();
        }else{
            Log.d("123","FILE OPEN ERROR");
        }
    }
    protected void onDestroy(){
        super.onDestroy();
        String inputTest  = edit.getText().toString();
        save(inputTest);
        Log.d("123","FILE SAVE OK");
    }

    public void save(String inputTest) {
        FileOutputStream out = null;
        BufferedWriter writer = null;
        try{
            out = openFileOutput("caicai123.txt", Context.MODE_PRIVATE);
            //out.getFD(

            File filesDir = getFilesDir();
            Log.d("123", filesDir.toString());
            writer = new BufferedWriter(new OutputStreamWriter(out));
            writer.write(inputTest);

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

        finally{
            try {
                if (writer != null) {
                    writer.close();
                }
            }catch(IOException e1){
                e1.printStackTrace();
            }
        }

    }


    public String load(){
        FileInputStream in = null;
        BufferedReader reader = null;
        StringBuilder content = new StringBuilder();
        try{
            in = openFileInput("caicai123.txt");
            reader = new BufferedReader(new InputStreamReader(in));
            String line = "";
            while( (line = reader.readLine()) != null){
                content.append(line);
            }
        }catch(IOException e){
            e.printStackTrace();
        }
        finally {
            if (reader != null){
                try{
                    reader.close();
                }catch(IOException e){
                    e.printStackTrace();
                }
            }
        }
        return content.toString();
    }

相关文章

  • 《第一行代码》学习笔记 第 6 章

    第 6 章 数据存储全方案,详解持久化技术 一:文件存储 将数据存储到文件中(使用 Java 流的方式将数据写入到...

  • 第六章--数据存储方案

    1.文件存储 将数据存储到文件中Context类中提供一个openFileOutput方法,可存数据到文件中,接收...

  • Android 数据存储

    一、文件存储 1.将数据存储到文件中 Android中的文件存储机制是一种基本的存储数据的方式,其不对数据进行任何...

  • 将数据存储到文件中

  • 数据存储之归档

    归档 NSKeyedArchiver : 序列化,把对象转为字节码,存储到文件中,然后将文件存储到硬盘中,实现数据...

  • 数据存储到SharePreferences中

    将数据存储到SharePreferences中相比于将数据保存到文件中的好处就是区分了数据类型,使得存取更加方便。...

  • Android复习之旅--文件存储

    内部存储 内部存储是指将应用程序中的数据以文件方式存储到设备的内部存储空间中(该文件位于 data/data/ /...

  • Python之Numpy实践笔记(3)

    读写文件 使用savetxt函数将数据存储到文件中,需要指定文件名以及保存的数组 importnumpyasnp ...

  • NSURLSessionDownloadTask

    NSURLSessionDownloadTask 大致说明 将下载的数据存储到文件中的URL会话任务。 NSURL...

  • Android数据存储方案

    文件存储 Context类中提供了一个openFileOutput()方法,可以用于将数据存储到指定文件中。第一个...

网友评论

      本文标题:将数据存储到文件中

      本文链接:https://www.haomeiwen.com/subject/jnjttqtx.html