【问题标题】:Empty saved text file清空保存的文本文件
【发布时间】:2018-06-27 13:50:19
【问题描述】:

我已经解决了两天的问题。使用 FileWriter 我尝试将数据保存到 txt 文件中。文件由应用程序保存,但始终为空。

b1.setOnClickListener(new View.OnClickListener(){

       @Override
        public void onClick(View v) {

           try {

               boolean usunieto = true;
               boolean stworzono = false;

               String t_magazyn = e_magazyn.getText().toString();
               String nazwa = e_nazwa.getText().toString();

               if(!t_magazyn.trim().equals("")){

                   @SuppressLint("SdCardPath") File plik = new File("/sdcard/"+nazwa+".txt");

                   // jeśli plik nie istnieje, stwórz go

                   if(plik.exists()){

                       usunieto = plik.delete();
                       Toast.makeText(getApplicationContext(),"Plik został usunięty!",Toast
                               .LENGTH_SHORT).show();

                   }
                   if(usunieto){

                       stworzono = plik.createNewFile();
                       Toast.makeText(getApplicationContext(),"Plik utworzony!",Toast
                               .LENGTH_SHORT).show();

                   }
                   if(!usunieto||!stworzono){

                       Toast.makeText(getApplicationContext(),"Apka dalej cie olewa xD",Toast
                               .LENGTH_SHORT).show();

                   }

                   //THIS PART DOESN'T WORK AS INTENDED

                   FileWriter wpis = new FileWriter(plik.getName(),true);
                   BufferedWriter bufor = new BufferedWriter(wpis);
                   bufor.write(e_magazyn.getText().toString());
                   i_e_magazyn.setText(e_magazyn.getText().toString());
                   bufor.close();



               }
           }
           catch(IOException e) {

               e.printStackTrace();

           }

           }

    });

e_magazyn,e_nazwa 是 EditText 字段,i_e_magazyn 是 TextView 字段

在此处不可见的 b2 按钮中,这行代码有效。

i_e_magazyn.setText(e_magazyn.getText().toString());

我尝试了很多操作来将数据更新到文件中,但是在创建新的 FileWriter 变量后看起来好像是空的

如何让它发挥作用?

【问题讨论】:

  • 将此添加到您的Manifest.. ` '
  • 我已经有了。顺便说一句,如果我没有添加这个,我就无法创建文件,不是吗?

标签: java android save filewriter


【解决方案1】:

你只需要写这行

FileWriter wpis = new FileWriter(plik,true);

代替

FileWriter wpis = new FileWriter(plik.getName(),true);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-29
    • 1970-01-01
    • 2011-04-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多