如何使用java在txt中添加新行,并且没有空格
当我在这个txt文件中写入文本时,要么新字符串和旧的现有字符串之间没有空格,要么有多余的行,这会打乱我的其他算法如何使用java在txt中添加新行,并且没有空格,java,file,text-files,filewriter,bufferedwriter,Java,File,Text Files,Filewriter,Bufferedwriter,当我在这个txt文件中写入文本时,要么新字符串和旧的现有字符串之间没有空格,要么有多余的行,这会打乱我的其他算法 公共字符串writeStudent(字符串文件、字符串名称) { 字符串txt=“”; //贯通法 try(FileWriter fw=newfilewriter(file+“.txt”,true); BufferedWriter bw=新的BufferedWriter(fw); PrintWriter out=新的PrintWriter(bw)) { out.println(名称
公共字符串writeStudent(字符串文件、字符串名称)
{
字符串txt=“”;
//贯通法
try(FileWriter fw=newfilewriter(file+“.txt”,true);
BufferedWriter bw=新的BufferedWriter(fw);
PrintWriter out=新的PrintWriter(bw))
{
out.println(名称+“\r\n”);
//将用户输入保存到class1.txt中
txt=“添加:”+名称;
}
捕获(IOE异常)
{
System.out.println(“错误”);
e、 printStackTrace();
//偏差
}
返回txt;
}
这是我用来在txt中编写的代码,使用(name+“\r\n”)会给我额外的空行。使用
BufferedWriter
而不是PrintWriter怎么样
这是我的示例代码。请尝试下面的测试代码
import java.io.*;
public class Stackoverflow {
public static void main(String[] args) {
File file = new File("C:\\test.txt");
OutputStream outputStream = null;
Writer writer = null;
BufferedWriter bufferedWriter = null;
try {
outputStream = new FileOutputStream(file);
writer = new OutputStreamWriter(outputStream);
bufferedWriter = new BufferedWriter(writer);
bufferedWriter.write("Hello");
bufferedWriter.write("\r\n");
bufferedWriter.write("\r\n");
bufferedWriter.write("Bye");
} catch (Exception e) {
e.printStackTrace();
} finally {
if (bufferedWriter != null) {
try {
bufferedWriter.close();
} catch (Exception ignore) {
}
}
if (writer != null) {
try {
writer.close();
} catch (Exception ignore) {
}
}
if (outputStream != null) {
try {
outputStream.close();
} catch (Exception ignore) {
}
}
}
}
}
输出
Hello
Bye
问题是,
println
函数会自动在输入字符串的末尾添加新行
out.println(名称+“\r\n”)
实际上与out.print(name+“\r\n\r\n”)相同代码>
最后,您需要考虑新行是否需要在学生姓名之前或之后
解决方法是简单地使用print
而不是println
,并在学生姓名前添加新行
比如说
给定现有文本文件
John Doe
您希望添加一个新名称作为
John Doe
Jane Doe
换行符实际上在名称输入之前。这意味着您应该使用类似于
out.print(“\r\n”+name”)的内容代码>它起作用了,但也删除了文件中以前的内容@Han如果不想删除以前的内容,请先读取文件,然后将内容保存到StringBuffer(或StringBuilder,字符串任意类型)。阅读完所有内容后,附加你想写的内容。参考: