Java。如何将文本追加到file.txt的顶部
导读:如何解决Java。如何将文本追加到file.txt的顶部?在开始写入之前,可以使用RandomAccessFile来使用方法来 光标并将其0th定位seek(long position)。如本主题所述RandomAccessFile f = new RandomAccessFile(new File...
在开始写入之前,可以使用RandomAccessFile来使用方法来 光标并将其0th定位seek(long position)。
如本主题所述
RandomAccessFile f = new RandomAccessFile(new File('yourFile.txt'), 'rw');f.seek(0); // to the beginningf.write('Jennifer'.getBytes());f.close();
正如下面许多评论所指出的,此解决方案从一开始就 覆盖 了文件内容。要完全替换内容,可能必须 删除 并 重写 File 。
解决方法我需要通过Java将文本添加到文本文件的开头。
例如我有带有数据的test.txt文件:
PeterJohnAlice
我需要添加(到文件顶部):
Jennifer
它应该是:
JenniferPeterJohnAlice
我有一部分代码,但是将数据追加到文件末尾,我需要将其添加到文件顶部:
public static void irasymas(String irasymai){try { File file = new File('src/lt/test.txt');if (!file.exists()) {file.createNewFile(); } FileWriter fw = new FileWriter(file.getAbsoluteFile(),true); BufferedWriter bw = new BufferedWriter(fw); bw.write(irasymai+ 'rn'); bw.close();}catch (IOException e) {e.printStackTrace();} }
我已经尝试过了,但这只会从文件中删除所有数据,而不会插入任何文本:
public static void main(String[] args) throws IOException {BufferedReader reader = null;BufferedWriter writer = null;ArrayList list = new ArrayList();try { reader = new BufferedReader(new FileReader('src/lt/test.txt')); String tmp; while ((tmp = reader.readLine()) != null)list.add(tmp); OUtil.closeReader(reader); list.add(0,'Start Text'); list.add('End Text'); writer = new BufferedWriter(new FileWriter('src/lt/test.txt')); for (int i = 0; i < list.size(); i++)writer.write(list.get(i) + 'rn');} catch (Exception e) { e.printStackTrace();} finally { OUtil.closeReader(reader); OUtil.closeWriter(writer);} }
谢谢你的帮助。
相关文章:
1. 从Spring MVC XML文件移动到javaconfig。我的数据库XML文件真的让我迷茫了2. vagrant - 使用NFS文件夹作为mysql datadir无法启动mysql的问题?3. Java中的枚举。优点?4. python - django的model字段在保存的时候做预处理怎么办?5. 为什么在java中,赋值和数据类型一样的变量i3,i4,System.out.println(i3==i4),最终输出不相等?6. Java泛型问题:类“不在类型变量的范围内”错误。7. 试图使使用OpenCV的Java应用程序(可执行Jar)可移植。收到不满意的链接错误8. Java。按值对地图排序9. css和HTML样式 投票管理系统10. AngularJs。是否可以通过单击取消选择HTML“广播”输入?