Java 如何准确地打印字符串?
我的代码有问题,因为我的文件路径以某种方式在路径末尾出现了“\n”,这在尝试使用该文件时导致了问题,因为它无法找到该文件 出于调试目的,如何打印包含Java 如何准确地打印字符串?,java,eclipse,Java,Eclipse,我的代码有问题,因为我的文件路径以某种方式在路径末尾出现了“\n”,这在尝试使用该文件时导致了问题,因为它无法找到该文件 出于调试目的,如何打印包含\b\n\r等内容的字符串 例如 System.out.println(file.getAbsolutePath).with specials() 它将打印到控制台: C:/folder/filename.extension\n 您可以通过执行字符串来打印\n。替换(“\n”,“\\\\n”) 所以要打印出来,请执行以下操作:System.out.
\b
\n
\r
等内容的字符串
例如
System.out.println(file.getAbsolutePath).with specials()
它将打印到控制台:
C:/folder/filename.extension\n
您可以通过执行
字符串来打印\n
。替换(“\n”,“\\\\n”)代码>
所以要打印出来,请执行以下操作:System.out.println(file.getAbsolutePath().replace(“\n”,“\\\\n”)代码>您可以尝试使用此代码,它将转义字符串。这将处理除\u
之外的所有转义,该转义无论如何都应显示为良好
public static String escape(String str) {
str = str.replace("\b", "\\b");
str = str.replace("\t", "\\t");
str = str.replace("\n", "\\n");
str = str.replace("\r", "\\r");
str = str.replace("\f", "\\f");
str = str.replace("\'", "\\'");
str = str.replace("\\", "\\\\");
return str;
}
此功能可按如下方式使用:
System.out.println(escape("123\n\rabc"));
只需使用print
而不是println
,并在每次print
后打印一条消息,说“--这应该在同一行--”或使用将删除空白(包括换行符)的命令。学究地说,您已按原样打印字符串。这可能适用于\n,但如果有其他内容,如\r\n,该怎么办?OP中的\n更像是一个示例,例如\r执行与for相同的操作,\n但使用r而不是n。还需要一个反斜杠。
System.out.println(escape("123\n\rabc"));