Java FileWriter

1. סקירה כללית

במדריך זה נלמד ונבין את FileWriter בכיתה הנוכחית java.io חֲבִילָה.

2. FileWriter

FileWriter הואמתמחה OutputStreamWriter לכתיבת קבצי תווים. זה לא חושף שום פעולות חדשות אלא עובד עם הפעולות שעוברות בירושה מה- OutputStreamWriter ו סוֹפֵר שיעורים.

עד Java 11, ה- FileWriter עבד עם קידוד תווים המוגדר כברירת מחדל וגודל מאגר ברירת המחדל של בתים. למרות זאת, Java 11 הציגה ארבעה בונים חדשים המקבלים א ערכה, ובכך מאפשר לציין את המשתמש ערכת. למרבה הצער, אנחנו עדיין לא יכולים לשנות את גודל מאגר בתים והוא מוגדר ל- 8192.

2.1. מיידית את FileWriter

ישנם חמישה בונים ב FileWriter בכיתה אם אנו משתמשים בגרסת Java לפני Java 11.

בואו נסתכל על בנאים שונים:

FileWriter ציבורי (שם מחרוזת file) זורק את IOException {super (FileOutputStream חדש (fileName)); } FileWriter ציבורי (מחרוזת קובץ שם, בוליאני להוסיף) זורק IOException {סופר (FileOutputStream חדש (fileName, נספח)); } FileWriter ציבורי (קובץ קובץ) זורק את IOException {סופר (FileOutputStream חדש (קובץ)); } FileWriter ציבורי (קובץ קובץ, נספח בוליאני) זורק את IOException {סופר (FileOutputStream חדש (קובץ, נספח)); } FileWriter ציבורי (FileDescriptor fd) {super (FileOutputStream חדש (fd)); }

Java 11 הציגה ארבעה בונים נוספים:

FileWriter ציבורי (String fileName, Charset charset) זורק IOException {super (FileEutputStream חדש (fileName), charset); } FileWriter ציבורי (String fileName, Charset charset, boolean append) זורק IOException {super (FileOutputStream חדש (fileName, append), charset); } FileWriter ציבורי (קובץ קובץ, Charset Charset) זורק IOException {סופר (FileOutputStream חדש (קובץ), Charset); } FileWriter ציבורי (קובץ קובץ, ערכת צ'ארסט, מוסיפה בוליאנית) זורק IOException {סופר (FileOutputStream חדש (קובץ, נספח), צ'ארסט); }

2.2. כותב חוּט לקובץ

בואו נשתמש באחד מה- FileWriter בונים ליצור מופע של FileWriter ואז כתוב לקובץ:

נסה (FileWriter fileWriter = FileWriter חדש ("src / test / resources / FileWriterTest.txt")) {fileWriter.write ("שלום אנשים!"); }

השתמשנו בבונה הטיעונים היחיד של ה- FileWriter שמקבל שם קובץ. לאחר מכן אנו משתמשים ב- כתוב (מחרוזת מחרוזת) מבצע בירושה מה- סוֹפֵר מעמד. מאז FileWriter הוא ניתן לסגירה אוטומטית, השתמשנו בניסיון-משאבים כדי שלא נצטרך לסגור את ה- FileWriter בִּמְפוּרָשׁ.

בעת ביצוע הקוד לעיל, חוּט ייכתב לקובץ שצוין:

היי חבר 'ה!

ה FileWriter אינו מתחייב אם הקובץ FileWriterTest.txt יהיה זמין או ייווצר. זה תלוי בפלטפורמה הבסיסית.

עלינו גם לציין כי פלטפורמות מסוימות עשויות לאפשר רק יחיד FileWriter מופע כדי לפתוח את הקובץ. במקרה זה, שאר הקבלנים של FileWriter class ייכשל אם הקובץ המעורב כבר פתוח.

2.3. הוספת א חוּט לקובץ

לעתים קרובות אנו צריכים להוסיף נתונים לתוכן הקיים של הקובץ. בואו נראה דוגמא של א FileWriter התומך בהוספה:

נסה (FileWriter fileWriter = FileWriter חדש ("src / test / resources / FileWriterTest.txt", נכון)) {fileWriter.write ("שלום אנשים שוב!"); }

כפי שאנו רואים, השתמשנו בבונה הדו-ארגומנטי המקבל שם קובץ ו- בוליאני דֶגֶל לְצַרֵף. מעביר את הדגל לְצַרֵף כפי ש נָכוֹן יוצר a FileWriter המאפשר לנו להוסיף טקסט לתוכן הקיים של הקובץ.

בעת ביצוע הקוד, יהיה לנו את חוּט צורף לתוכן הקיים של הקובץ שצוין:

שלום אנשים! שלום אנשים שוב! 

3. מסקנה

במאמר זה למדנו על שיעור הנוחות FileWriter וכמה דרכים בהן FileWriter ניתן ליצור. לאחר מכן השתמשנו בו כדי לכתוב נתונים לקובץ.

כמו תמיד, קוד המקור השלם להדרכה זמין ב- GitHub.


$config[zx-auto] not found$config[zx-overlay] not found