הוספת תו Newline למחרוזת ב- Java

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

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

בואו נדון כיצד להשתמש בתווים חדשים.

2. הוספת דמויות Newline במחרוזת

מערכות הפעלה כוללות תווים מיוחדים המציינים את תחילתה של שורה חדשה. לדוגמה, בלינוקס קו חדש מסומן על ידי “\ n ”, נקרא גם א הזנת שורה. ב- Windows, קו חדש מסומן באמצעות "\ r \ n ”, נקרא לפעמים חזרה בכרכרה ו הזנת שורה, או CRLF.

הוספת שורה חדשה בג'אווה היא פשוטה כמו לכלול "\ n ” , “\ r ", או “\ר\ n ” בסוף המחרוזת שלנו.

2.1. שימוש ב- CRLF Line-Breaks

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

למערכת הפעלה מבוססת יוניקס / לינוקס / Mac חדשה אנו יכולים להשתמש ב"\ n ":

קו מחרוזת 1 = "דמפטי המפטי ישב על קיר."; מחרוזת line2 = "דמפטי למפטי הייתה נפילה נהדרת."; מחרוזת מחרוזת = line1 + "\ n" + line2;

אם אנו משתמשים במערכת הפעלה מבוססת Windows, אנו יכולים להשתמש ב- "\ r \ n ":

חריזה = קו 1 + "\ r \ n" + קו 2;

עבור מערכת הפעלה ישנה מבוססת Mac, אנו יכולים להשתמש ב- “\ r ":

חריזה = קו 1 + "\ r" + שורה 2;

הדגמנו שלוש שיטות להוספת שורה חדשה, אך למרבה הצער, הן תלויות בפלטפורמה.

2.2. שימוש במפרידי קווים עצמאיים לפלטפורמה

אנו יכולים להשתמש בקבועים שהוגדרו על ידי המערכת כאשר אנו רוצים שהקוד שלנו יהיה בלתי תלוי בפלטפורמה.

לדוגמא, שימוש System.lineSeparator () למתן מפריד קו:

חריזה = line1 + System.lineSeparator () + line2;

או שאנחנו יכולים גם להשתמש System.getProperty ("line.separator"):

חריזה = line1 + System.getProperty ("line.separator") + line2;

2.3. שימוש בתווים חדשים של פלטפורמה עצמאית

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

אם אנו משתמשים במשהו כמו System.out.printf אוֹ מחרוזת.פורמט, אז ה דמות קו עצמאי עצמאית לפלטפורמה, % n, ניתן להשתמש ישירות בתוך מחרוזת:

חריזה = "Dumpty Humpty ישב על קיר.% nDumpty Dumpty נפלה מאוד.";

זה כמו לכלול System.lineSeparator () בתוך המחרוזת שלנו, אך איננו צריכים לחלק את המחרוזת למספר חלקים.

3. הוספת תווים חדשים בדף HTML

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

אנו יכולים גם להשתמש בתווי Unicode “& #13;” (החזרת כרכרה) ו “& #10;” (הזנת שורה). למרות שהדמויות האלה עובדות, הן לא עובדות בדיוק כמו שאנו מצפים מהם בכל הפלטפורמות. במקום זאת, עדיף להשתמש בו

בנוסף, אנו יכולים להשתמש "\ N" בכמה אלמנטים HTML כדי לשבור קו.

בסך הכל, אלה שלוש השיטות לפרוץ קו ב- HTML. אנו יכולים להחליט באיזה אחד להשתמש בהתאם לתג ה- HTML בו אנו משתמשים.

3.1. תגית HTML Break

אנו יכולים להשתמש בתג הפסקה של HTML

חריזה = קו 1 + "

"+ שורה 2;

ה

תג לשבירת קו עובד כמעט בכל רכיבי ה- HTML כמו ,

,

,
וכו 'עם זאת, שים לב שזה לא עובד ב- תָג.

3.2. דמות Newline

אנחנו יכולים להשתמש '\ N' לשבור שורה אם הטקסט כלול ב

 אוֹ  תָג:

חריזה = שורה 1 + "\ n" + שורה 2;

3.3. דמויות יוניקוד

לבסוף, אנו יכולים להשתמש בתווי Unicode “& #13;” (החזרת כרכרה) ו “& #10;” (Feed Feed) לשבירת קו. לדוגמא, ב אנו יכולים להשתמש באחת מהאפשרויות הבאות:

חריזה = שורה 1 + "" + שורה 2; חריזה = שורה 1 + "" + שורה 2; 

בשביל ה

 תג, שתי השורות למטה יעבדו:

חריזה = שורה 1 + "" + שורה 2; חריזה = שורה 1 + "" + שורה 2; 

4. ההבדל בין \ n ו \ r

\ r ו \ n הם תווים המסומנים עם ערכי ASCII של 13 (CR) ו- 10 (LF), בהתאמה. הֵםשניהם מייצגים הפסקה בין שתי שורות, אך מערכות הפעלה משתמשות בהם אחרת.

ב- Windows, משתמשים ברצף של שתי תווים כדי להתחיל שורה חדשה, CR מיד ואחריה LF. לעומת זאת, במערכות דומות ליוניקס משתמשים רק ב- LF.

בעת כתיבת יישומי ג'אווה, עלינו לשים לב לתווי מעבר השורה בהם אנו משתמשים מכיוון שהיישומים יתנהגו באופן שונה בהתאם למערכת ההפעלה בה הם פועלים.

האפשרות הבטוחה והתואמת ביותר היא להשתמש System.lineSeparator (). בדרך זו, לא נצטרך לקחת את מערכת ההפעלה בחשבון.

5. מסקנה

במאמר זה דנו כיצד להוסיף תווים בשורה חדשה למחרוזת ב- Java.

ראינו גם כיצד לכתוב קוד עצמאי לפלטפורמה עבור שורה חדשה באמצעות System.lineSeparator () ו System.getProperty ("line.separator").

לבסוף, סיכמנו כיצד להוסיף שורה חדשה למקרה שנוצר דף HTML.

היישום המלא של מאמר זה ניתן למצוא באתר GitHub.