Có, tôi biết rằng '\n'
viết một dòng mới trong UNIX trong khi đối với Windows có hai chuỗi ký tự : '\r\n'
. Tất cả điều này là rất tốt trong lý thuyết, nhưng câu hỏi của tôi là tại sao ? Tại sao nhân vật trở lại vận chuyển là thêm trong Windows? Nếu UNIX có thể làm điều đó tại \n
sao phải mất hai ký tự Windows để làm điều này?
Tôi đang đọc cuốn sách Python của David Beazley và anh ấy nói:
Ví dụ: trên Windows, việc viết ký tự '\ n' thực sự xuất ra chuỗi hai ký tự '\ r \ n' (và khi đọc lại tệp, '\ r \ n' được dịch lại thành một '\ n' tính cách).
Tại sao phải nỗ lực thêm?
Tôi sẽ thành thực. Tôi đã biết sự khác biệt trong một thời gian dài nhưng chưa bao giờ bận tâm hỏi TẠI SAO. Tôi hy vọng điều đó được trả lời ngày hôm nay.
Cảm ơn vì đã dành thời gian cho tôi.
System.out.printf()
hoặc String.format()
), hãy đảm bảo bạn sử dụng %n
làm CRLF cho các mục đích tương thích của hệ điều hành. \n
bị phản đối
\n\r
nhiều lần. (Tôi nghĩ đó là thứ gì đó từ NetWare.)
\r\n
. Nó cũng được sử dụng bởi hầu hết các giao thức internet dựa trên văn bản (ví dụ: SMTP, HTTP, v.v.) với lý do chủ yếu giống như Windows (tức là lịch sử).