Java 将.txt文件的第一行添加到最后一行
在Java中,我有一个Java 将.txt文件的第一行添加到最后一行,java,bufferedreader,bufferedwriter,Java,Bufferedreader,Bufferedwriter,在Java中,我有一个a.txt列表试图将第一行移到最后一行 我找到了执行以下操作的脚本 从输入文件中查找“文本”,并输出到临时文件。(我可以设定 将“文本”转换为字符串buffRead.readLine???),然后 删除原始文件并将新文件重命名为原始文件 请告诉我我是Java新手,但我做了很多研究,找不到一个简单脚本的解决方案。因为这是Java,涉及到文件IO,所以这是一个非常重要的设置。算法本身很简单,但这样做所需的符号并不明显 BufferedReader reader = new Bu
a.txt
列表试图将第一行移到最后一行
我找到了执行以下操作的脚本
请告诉我我是Java新手,但我做了很多研究,找不到一个简单脚本的解决方案。因为这是Java,涉及到文件IO,所以这是一个非常重要的设置。算法本身很简单,但这样做所需的符号并不明显
BufferedReader reader = new BufferedReader(new FileReader("fileName"));
这为您提供了一种读取文件fileName
内容的简单方法
PrintWriter writer = new PrintWriter(new FileWriter("fileName"));
这为您提供了一种写入文件的简单方法。这样做的API与使用PrintWriter
时的System.out
完全相同,因此我选择在这里使用
在这一点上,只需读取文件并按正确顺序回显即可
String text = reader.readLine();
这会将文件的第一行保存到text
while (reader.ready()) {
writer.println(reader.readLine());
}
当读卡器
中仍有文本时,将行打印到写卡器
中
writer.println(text);
打印开始时保存的行
请注意,如果您的程序执行任何其他操作(不管怎样,这只是一个好习惯),您希望关闭IO流以避免资源泄漏
reader.close();
writer.close();
或者,您也可以将整个内容包装在一个容器中,以自动执行相同的清理。因为这是Java,涉及到文件IO,所以这是一个非常重要的设置。算法本身很简单,但这样做所需的符号并不明显
BufferedReader reader = new BufferedReader(new FileReader("fileName"));
Scanner fileScanner = new Scanner(myFile);
fileScanner.nextLine();
这为您提供了一种读取文件fileName
内容的简单方法
PrintWriter writer = new PrintWriter(new FileWriter("fileName"));
这为您提供了一种写入文件的简单方法。这样做的API与使用PrintWriter
时的System.out
完全相同,因此我选择在这里使用
在这一点上,只需读取文件并按正确顺序回显即可
String text = reader.readLine();
这会将文件的第一行保存到text
while (reader.ready()) {
writer.println(reader.readLine());
}
当读卡器
中仍有文本时,将行打印到写卡器
中
writer.println(text);
打印开始时保存的行
请注意,如果您的程序执行任何其他操作(不管怎样,这只是一个好习惯),您希望关闭IO流以避免资源泄漏
reader.close();
writer.close();
或者,您也可以将整个内容包装在一个容器中,以自动执行相同的清理
Scanner fileScanner = new Scanner(myFile);
fileScanner.nextLine();
这将返回文件中的第一行文本,并将其丢弃,因为您没有将其存储在任何位置。
要覆盖现有文件,请执行以下操作:
FileWriter fileStream = new FileWriter("my/path/for/file.txt");
BufferedWriter out = new BufferedWriter(fileStream);
while(fileScanner.hasNextLine()) {
String next = fileScanner.nextLine();
if(next.equals("\n") out.newLine();
else out.write(next);
out.newLine();
}
out.close();
请注意,您必须以这种方式捕获和处理一些IOExceptions
。还有,if()
<代码>其他()。。。语句在while()
循环中是必需的,以保持文本文件中存在任何换行符
将同一行添加到此文件的最后一行查看此链接
这将返回文件中的第一行文本,并将其丢弃,因为您没有将其存储在任何位置。
要覆盖现有文件,请执行以下操作:
FileWriter fileStream = new FileWriter("my/path/for/file.txt");
BufferedWriter out = new BufferedWriter(fileStream);
while(fileScanner.hasNextLine()) {
String next = fileScanner.nextLine();
if(next.equals("\n") out.newLine();
else out.write(next);
out.newLine();
}
out.close();
请注意,您必须以这种方式捕获和处理一些IOExceptions
。还有,if()
<代码>其他()。。。语句在while()
循环中是必需的,以保持文本文件中存在任何换行符
将同一行添加到此文件的最后一行查看此链接读取第一行并将其存储到字符串中,然后读取文件的其余部分,并将每一行输出到新文件。最后,在新文件的末尾写入第一行。简单,你就可以及时回家吃玉米片了。读第一行并将其存储到字符串中,然后读文件的其余部分,将每一行输出到新文件中。最后,在新文件的末尾写入第一行。简单,你会及时回家吃玉米片。