Bibi's DevLog ๐Ÿค“๐ŸŽ

[Java] ๊ฐœํ–‰๋ฌธ์ž, System.getProperty("line.separator") ๋ณธ๋ฌธ

๐Ÿ–ฅ BE ๋ฐฑ์—”๋“œ/Java ์ž๋ฐ”

[Java] ๊ฐœํ–‰๋ฌธ์ž, System.getProperty("line.separator")

๋น„๋น„ bibi 2021. 2. 25. 14:12

๊ฐœํ–‰๋ฌธ์ž - System.getProperty("line.separator"), System.lineSeparator()

๊ฐœํ–‰๋ฌธ์ž(์ค„๋ฐ”๊ฟˆ๋ฌธ์ž, new line)๋ž€?

: ์ปดํ“จํ„ฐ์—์„œ ์ค„๋ฐ”๊ฟˆ์„ ๋‚˜ํƒ€๋„ค๋Š” ์ œ์–ด๋ฌธ์ž.
์ค„๋ฐ”๊ฟˆ๋ฌธ์ž, ์ƒˆ์ค„๋ฌธ์ž, ๋ผ์ธ์—”๋”ฉ, ๋ณต๊ท€๊ฐœํ–‰.. ๋“ฑ์œผ๋กœ๋„ ๋ถˆ๋ฆฐ๋‹ค.
(newLine, line ending, end-of-line,EOL, line break ..)

๊ฐœํ–‰๋ฌธ์ž์—๋Š” ๋‘ ์ข…๋ฅ˜๊ฐ€ ์žˆ๋‹ค.

  • LF : new Line Feed, ๋ผ์ธํ”ผ๋“œ, ๋‰ด๋ผ์ธ. ์ปค์„œ๋ฅผ ํ•œ ์นธ ์•„๋ž˜๋กœ ์ด๋™ํ•ด ์ƒˆ๋กœ์šด ๋ผ์ธ์„ ์ถ”๊ฐ€
    • \n
    • ์•„์Šคํ‚ค์ฝ”๋“œ : 10
  • CR : Carrige Return, ์บ๋ฆฌ์ง€๋ฆฌํ„ด, ๋ฆฌํ„ด. ์ปค์„œ๋ฅผ ๋งจ ์™ผ์ชฝ์œผ๋กœ ์ด๋™(์‹œ์ž‘ ์œ„์น˜๋กœ ๋ณต๊ท€)
    • \r
    • ์•„์Šคํ‚ค์ฝ”๋“œ : 13
    • ์—”ํ„ฐํ‚ค์™€ ๊ฐ™๋‹ค.

์šด์˜์ฒด์ œ๋ณ„ ์ค„๋ฐ”๊ฟˆ๋ฌธ์ž

์ค„๋ฐ”๊ฟˆ ๋ฌธ์ž(๊ฐœํ–‰๋ฌธ์ž)๋Š” ์šด์˜์ฒด์ œ๋งˆ๋‹ค ๋‹ค๋ฅด๋‹ค.

  • ์œˆ๋„์šฐ : CRLF (\r\n)
  • ๋งฅ : CR (\r)
  • ์œ ๋‹‰์Šค : LF (\n)

์ž๋ฐ” ๊ฐœํ–‰๋ฌธ์ž - System.lineSeparator()์‚ฌ์šฉํ•˜๊ธฐ

์ž๋ฐ” ์ฝ”๋“œ์—์„œ ๊ฐœํ–‰์„ ์ฒ˜๋ฆฌํ•  ๋•Œ \r\n์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•์ด๊ธด ํ•˜์ง€๋งŒ,

์œ„ ๋‚ด์šฉ์ฒ˜๋Ÿผ ์šด์˜์ฒด์ œ๋ณ„๋กœ ๋‹ค๋ฅด๊ฒŒ ์ฒ˜๋ฆฌ๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์ง€์–‘ํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

๊ฐ ์‹œ์Šคํ…œ์— ๋งž๋Š” ๊ฐœํ–‰๋ฌธ์ž๋ฅผ ์ง€์›ํ•˜๋Š” ์•„๋ž˜ ๋ฉ”์„œ๋“œ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

// ์ž๋ฐ” ๋ฒ„์ „ 6 ์ดํ•˜
System.getProperty("line.separator");

// ์ž๋ฐ” ๋ฒ„์ „ 7 ์ด์ƒ
System.lineSeparator()
public static final String NEWLINE = System.getProperty("line.separator");

์ด๋ ‡๊ฒŒ ์ƒ์ˆ˜๋กœ ์„ ์–ธํ•˜๊ณ , ๊ฐœํ–‰์ด ํ•„์š”ํ•œ ๋ฌธ์ž์— ๋ถ™์—ฌ์„œ ์‚ฌ์šฉํ–ˆ๋‹ค.

์ถœ์ฒ˜
: ๋ธ”๋กœ๊ทธ1, ๋ธ”๋กœ๊ทธ2, ๋ธ”๋กœ๊ทธ3 , ์ œํƒ€์œ„ํ‚ค
๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค๐Ÿ™‡โ€โ™€๏ธ