כתיבה לקובץ בקוטלין

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

במדריך מהיר זה נלמד על דרכים שונות לכתיבת תוכן לקובץ בשיטות סיומת Kotlin - הזמינות בספרייה הסטנדרטית שלו.

2. קוטלין קוֹבֶץ הרחבות

Kotlin מספק דרכי כתיבה שונות לקובץ בצורה של שיטות סיומת עבור java.io. קובץ.

נשתמש בכמה כאלה כדי להדגים דרכים שונות בהן נוכל להשיג זאת באמצעות קוטלין:

  • כתוב טקסט - מאפשר לנו לכתוב ישירות מתוך חוּט
  • writeBytes - מאפשר לנו לכתוב ישירות מתוך ByteArray
  • מכונת דפוס - מספק לנו א PrintWriter
  • bufferedWriter - מאפשר לנו לכתוב באמצעות a BufferedWriter

בואו נדון בהם ביתר פירוט.

3. כתיבה ישירה

כותב ישירות לתוך א קוֹבֶץ ממקור נתון היא האסטרטגיה הפשוטה ביותר שאנו יכולים לצפות בשיטות הרחבת Kotlin.

3.1. כתוב טקסט

כנראה שיטת ההרחבה הכי פשוטה, writeText לוקח את התוכן כ- חוּט וכותב אותו ישירות לקובץ שצוין. התוכן הנתון מקודד בטקסט UTF-8 (ברירת מחדל) או כל ערכה אחרת שצוינה:

קובץ (fileName) .writeText (fileContent)

שיטה זו מאצילה פנימית writeBytes כמפורט להלן. אך ראשית, הוא ממיר את התוכן הנתון למערך בתים באמצעות ערכת התווים שצוינה.

3.2. writeBytes

כמו כן, אנו יכולים להשתמש בתים כקלט. השיטה writeBytes לוקח ByteArray כוויכוח וכותב אותו ישירות לקובץ שצוין. זה שימושי כאשר יש לנו את התוכן כמערך של בתים ולא כטקסט רגיל.

קובץ (fileName) .writeBytes (fileContentAsArray)

אם הקובץ הנתון קיים, הוא מוחלף.

4. כתיבה לא קוֹבֶץ שימוש בסופרים

Kotlin מציע גם שיטות הרחבה המספקות לנו מופע Java Writer.

4.1. printWriter

אם נרצה להשתמש בג'אווה PrintWriter, קוטלין מספק א printWriter לתפקד בדיוק למטרה זו. בעזרתו נוכל להדפיס ייצוגים מעוצבים של אובייקטים ל- OutputStream:

קובץ (fileName) .printWriter ()

שיטה זו מחזירה חדשה PrintWriter למשל. בשלב הבא נוכל לנצל את השיטה להשתמש להתמודד עם זה:

קובץ (fileName) .printWriter (). השתמש ב- {out -> out.println (fileContent)}

עם להשתמש, אנו יכולים לבצע פונקציה על המשאב שנסגר לאחר סיום. המשאב נסגר ללא קשר לשאלה אם הפונקציה בוצעה בהצלחה או שזרקה חריג.

4.2. bufferedWriter

כמו כן, קוטלין מספק גם א bufferedWriter פונקציה המספקת לנו ג'אווה BufferedWriter.

ואז, איתו, אנו יכולים לכתוב טקסט לזרם פלט תווים בצורה יעילה יותר.

קובץ (fileName) .bufferedWriter ()

דומה ל PrintWriter, פונקציה זו מחזירה חדשה BufferedWriter מופע שבו מאוחר יותר נוכל להשתמש כדי לכתוב את תוכן הקובץ.

קובץ (fileName) .bufferedWriter (). השתמש ב- {out -> out.write (fileContent)}

5. מסקנה

במאמר זה ראינו דרכים שונות לכתוב לקובץ בשיטות סיומת Kotlin.

לבסוף, קוד המקור של מאמר זה ומקרי הבדיקה הרלוונטיים זמינים במאגר GitHub הבא.


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