换行符因操作系统而异。例如,Linux 将换行符视为 \n,有时称为换行符(LF)。
而在windows操作系统中,新行是通过“\r\n”组合来考虑的,这被称为回车换行(CRLF)。
可以在字符串的任意索引处或字符串末尾添加换行符转义序列,例如“\n”、“\r”和“\r\n”。
在 Unix 中,只有 \n 字符足以将字符串分成新行,但在 Windows 中,\r 后面是 \n 字符。因此,Windows 操作系统需要两个字符的转义序列。
在开发 Java 应用程序和使用新换行符时,您必须特别注意它们,因为它们严格遵循操作系统规则。
始终建议使用System.lineSeparator()方法使用与操作系统无关的新行。因此,现在您无需担心与操作系统相关的问题。
先看看:不同操作系统的方式:
public class AddNewLineExample1 {
public static void main(String[] args) {
String line1 = "Hello engeers"; String line2 = "hope you are staying safe";
String line3 = line1 + "\n" + line2;
System.out.println("Mac or unix or linux newline with \\n"); System.out.println(line3); } }
|
public class AddNewLineExample2 {
public static void main(String[] args) {
// windows os String line1 = "Hello engeers"; String line2 = "hope you are staying safe";
String line3 = line1 + "\r\n" + line2;
System.out.println("windwos print newline with \\r\\n"); System.out.println(line3); } }
|
使用旧 Mac OS 在使用“\r”在 java 中打印新行:
public class AddNewLineExample3 {
public static void main(String[] args) { // old mac os based String line1 = "Hello engeers"; String line2 = "hope you are staying safe"; String line3 = line1 + "\r" + line2; System.out.println("Old mac os print newline with \\r"); System.out.println(line3); } }
|
为了确保您的代码在任何操作系统上始终正常运行,java 提供了一个系统 API 来独立于 java 代码添加新行。
这可以通过以下两种方式完成。
a) System.lineSeparator()
b) System.getProperty()
public class AddNewLineExample4 {
public static void main(String[] args) {
// Using java api system class lineSeparator() method String line1 = "Hello engeers"; String line2 = "hope you are staying safe";
String line3 = line1 + System.lineSeparator() + line2;
System.out.println("print newline with System.lineSeparator() method"); System.out.println(line3); } } public class AddNewLineExample4 {
public static void main(String[] args) {
// Using java api system class getProperty() method String line1 = "Hello engeers"; String line2 = "hope you are staying safe";
String line3 = line1 + System.getProperty("line.separator") + line2;
System.out.println("print newline with System.getPropertyr() method"); System.out.println(line3); } }
|
使用独立于系统的"%n":
public class AddNewLineExample5 {
public static void main(String[] args) {
// Using system dependent %n String line1 = "Hello engeers%nwelcome to the java blog";
System.out.println("print newline with %n line separator"); System.out.printf(line1); } }
|
如果您在 java 代码中构建 Html 标记,那么您有三个选项来添加新的空行。
3.1 Html Break标签
3.2 换行\n字符
3.3 Unicode 字符
ASCII 码 13 对应于回车(它是“\r”)。
ASCII 代码 10 对应于换行符(它是“\n”)。
public class AddNewLineExample6 {
public static void main(String[] args) {
// html break tag String tag1 = "<p>hello</p>"; String tag2 = "<p>world</p>";
String tag3 = tag1 + "</br>" + tag2;
// using java \n String tag4 = tag1 + "\n" + tag3;
// using unicodes
String tag5 = "<p>This is paragraph text and woops there is a new line.</p>"; } }
|