有一个问题我正在和你打两天。使用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变量之后看起来像是空的
我如何让它发挥作用?
答案 0 :(得分:0)
你只需要写这一行
FileWriter wpis = new FileWriter(plik,true);
而不是
FileWriter wpis = new FileWriter(plik.getName(),true);