在那里,我正在尝试编写一个代码,自动生成代码并在文件中写入。所以问题是当我尝试写'\ t''\ n'等字符时我遇到问题。
FileOutputStream fos2 = new FileOutputStream("...\\PersonalList.java");
PrintStream pr2 = new PrintStream(fos2);
for (Iterator<String> itr = name.iterator(); itr.hasNext();) {
i++;
s_str = itr.next();
if(i==counter)
pr2.print('"' + s_str.toUpperCase() + '"' + ");\n");
else
pr2.print('"' + s_str.toUpperCase() + '\t' + '"' + '+');
}
我的目标是将代码“pr.println(”var1 \ t“+”var2 \ t“)编写到另一个文件中,当我编译该文件时,它会创建一个文本文件,所以当我看到我的.txt文件我应该看到“NAME(这里必须是空格字符)LAST_NAME”。但是在'\ t'字符中它写道 pr.println(“var1”+“var2”)。我希望我正确地解释我的工作。 :)如果你能帮助我,我很感激。
答案 0 :(得分:3)
你的意思并不是很清楚,但我怀疑你只是试图逃避反斜杠:
pr2.print('"' + s_str.toUpperCase() + "\\t\"+");
(我冒昧地将你最后得到的所有字符组合成一个字符串,这意味着我们也需要转义双引号,因此\"
。)
答案 1 :(得分:1)
反斜杠字符是一个特殊字符,用于转义标签(\t
),换行符(\n
)等内容。因此,如果要打印反斜杠,则必须键入{{ 1}}。
在您的特定情况下,您要打印\\
。