0 امتیاز
قبل در برنامه نویسی توسط (1.1هزار امتیاز)
ویرایش شده قبل توسط

وقتی با استفاده از کلاس Formatter می خواهم درون یک فایل اطلاعاتی بنویسم، اطلاعات قبلی موجود در فایل پاک می شود.

Formatter formatter = new Formatter("file-path");
formatter.format("%s","test");
formatter.close();

چگونه می توانم با استفاده از Formatter فقط به انتهای فایل اطلاعات اضافه کنم؟

1 پاسخ

0 امتیاز
قبل توسط (1.1هزار امتیاز)

کلاس formatter همیشه محتویات درون فایلی که باز می کند را پاک می کند، مگر اینکه بعنوان constructor از یک outputstream استفاده کنیم که اینترفیس Appendable را پیاده سازی کرده باشد (مثل کلاس FileWriter).

FileWriter fileWriter = new FileWriter(fileName, true); 
Formatter formatter = new Formatter(fileWriter);
formatter.format("%s","test");

برای performance بهتر می توانیم از BufferedWriter نیز استفاده کنیم:

FileWriter fileWriter = new FileWriter(fileName, true); 
Formatter formatter = new Formatter(new BufferedWriter(fileWriter));
formatter.format("%s","test");

سوالات مشابه

0 امتیاز
0 پاسخ 368 بازدید
0 امتیاز
1 پاسخ 1.5هزار بازدید
+1 امتیاز
1 پاسخ 791 بازدید
0 امتیاز
1 پاسخ 1.5هزار بازدید
0 امتیاز
1 پاسخ 374 بازدید
0 امتیاز
1 پاسخ 2.4هزار بازدید
0 امتیاز
1 پاسخ 405 بازدید
0 امتیاز
1 پاسخ 1.2هزار بازدید
...