java - 如何使用 FileWriter 在文件中附加文本
问题描述
我正在尝试继续将文本添加到我的文件(内部存储)中,它尝试使用 FileOutputStream 并且很好,但是在我更改为使用 FileWriter 之后,我开始出现只读文件系统错误
EditText edd = findViewById(R.id.editTextData);
Spinner spp = findViewById(R.id.spinnerCategory);
String text1 = edd.getText().toString();
String text2 = spp.getSelectedItem().toString();
String filepath = text2 + ".txt";
try {
BufferedWriter bw = new BufferedWriter(new FileWriter(filepath, true));
bw.write(text1);
bw.newLine();
bw.close();
Toast.makeText(getBaseContext(), "Information Saved", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
Toast.makeText(getBaseContext(), e.getMessage(), Toast.LENGTH_SHORT).show();
} //End try catch statement
}```
It's supposed to say Information Saved but i keep getting read-only file system
解决方案
EditText edd = findViewById(R.id.editTextData);
Spinner spp = findViewById(R.id.spinnerCategory);
String text1 = edd.getText().toString();
String text2 = spp.getSelectedItem().toString();
String filename = text2 + ".dat";
try {
File fa = new File(getFilesDir(),filename); //getting the filename path
FileWriter fw = new FileWriter(fa,true);
fw.write(text1 + "\n");
fw.close();
Toast.makeText(getBaseContext(), "Information Saved", Toast.LENGTH_SHORT).show();
} catch (Exception e)
{
Toast.makeText(getBaseContext(), e.getMessage(), Toast.LENGTH_SHORT).show();
} //End try catch statement
推荐阅读
- python - Tensorflow 2.1 - make_csv_dataset - ValueError: Received a feature column from TensorFlow v1, but this is a TensorFlow v2 Estimator
- php - WooCommerce:仅针对特定用户角色显示我的帐户链接
- rest - 如何为 Spring RestDocs 即 MockMvc 的嵌套订单对象指定 FieldDescriptors
- java - 如何在 log4j2 中增量重新配置?
- laravel - laravel artisan 命令的混乱
- java - 如何点击 reCaptcha 复选框
- javascript - 禁用点击并重置它(Javascript Vanilla)
- flutter - 使用 Custom Painter 在 Flutter 中遮盖两个图像
- python - 如何降级使用 tensorflow-gpu 安装的 hdf5
- sql - 在 DB2 中找不到匹配项时日期无效