Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何准确地打印字符串?_Java_Eclipse - Fatal编程技术网

Java 如何准确地打印字符串?

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.

我的代码有问题,因为我的文件路径以某种方式在路径末尾出现了“\n”,这在尝试使用该文件时导致了问题,因为它无法找到该文件

出于调试目的,如何打印包含
\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"));