1. import java.io.BufferedWriter;
  2. import java.io.FileOutputStream;
  3. import java.io.FileWriter;
  4. import java.io.IOException;
  5. import java.io.OutputStreamWriter;
  6. import java.io.RandomAccessFile;
  7. /**
  8. * 描述:追加内容到文件末尾
  9. * @author Administrator
  10. *
  11. */
  12. public class WriteStreamAppend {
  13. /**
  14. * 追加文件:使用FileOutputStream,在构造FileOutputStream时,把第二个参数设为true
  15. *
  16. * @param fileName
  17. * @param content
  18. */
  19. public static void method1(String file, String conent) {
  20. BufferedWriter out = null;
  21. try {
  22. out = new BufferedWriter(new OutputStreamWriter(
  23. new FileOutputStream(file, true)));
  24. out.write(conent);
  25. } catch (Exception e) {
  26. e.printStackTrace();
  27. } finally {
  28. try {
  29. out.close();
  30. } catch (IOException e) {
  31. e.printStackTrace();
  32. }
  33. }
  34. }
  35. /**
  36. * 追加文件:使用FileWriter
  37. *
  38. * @param fileName
  39. * @param content
  40. */
  41. public static void method2(String fileName, String content) {
  42. try {
  43. // 打开一个写文件器,构造函数中的第二个参数true表示以追加形式写文件
  44. FileWriter writer = new FileWriter(fileName, true);
  45. writer.write(content);
  46. writer.close();
  47. } catch (IOException e) {
  48. e.printStackTrace();
  49. }
  50. }
  51. /**
  52. * 追加文件:使用RandomAccessFile
  53. *
  54. * @param fileName
  55. *            文件名
  56. * @param content
  57. *            追加的内容
  58. */
  59. public static void method3(String fileName, String content) {
  60. try {
  61. // 打开一个随机访问文件流,按读写方式
  62. RandomAccessFile randomFile = new RandomAccessFile(fileName, "rw");
  63. // 文件长度,字节数
  64. long fileLength = randomFile.length();
  65. // 将写文件指针移到文件尾。
  66. randomFile.seek(fileLength);
  67. randomFile.writeBytes(content);
  68. randomFile.close();
  69. } catch (IOException e) {
  70. e.printStackTrace();
  71. }
  72. }
  73. public static void main(String[] args) {
  74. System.out.println("start");
  75. method1("c:/test.txt", "追加到文件的末尾");
  76. System.out.println("end");
  77. }

java追加文件的几种方式的更多相关文章

  1. 【文件下载】Java下载文件的几种方式

    [文件下载]Java下载文件的几种方式  摘自:https://www.cnblogs.com/sunny3096/p/8204291.html 1.以流的方式下载. public HttpServl ...

  2. Java读写文件的几种方式

    自工作以后好久没有整理Java的基础知识了.趁有时间,整理一下Java文件操作的几种方式.无论哪种编程语言,文件读写操作时避免不了的一件事情,Java也不例外.Java读写文件一般是通过字节.字符和行 ...

  3. java复制文件的4种方式

    尽管Java提供了一个可以处理文件的IO操作类.但是没有一个复制文件的方法.复制文件是一个重要的操作,当你的程序必须处理很多文件相关的时候.然而有几种方法可以进行Java文件复制操作,下面列举出4中最 ...

  4. [JAVA]java复制文件的4种方式

    尽管Java提供了一个可以处理文件的IO操作类. 但是没有一个复制文件的方法. 复制文件是一个重要的操作,当你的程序必须处理很多文件相关的时候. 然而有几种方法可以进行Java文件复制操作,下面列举出 ...

  5. Java读取文件的几种方式

    package com.mesopotamia.test; import java.io.BufferedReader; import java.io.ByteArrayInputStream; im ...

  6. Java下载文件的几种方式

    转发自博客园Sunny的文章 1.以流的方式下载 public HttpServletResponse download(String path, HttpServletResponse respon ...

  7. java 下载文件的两种方式和java文件的上传

    一:以网络的方式下载文件 try { // path是指欲下载的文件的路径. File file = new File(path); // 以流的形式下载文件. InputStream fis = n ...

  8. java遍历文件夹两种方式

    1:非递归方式(有点类似二叉树的非递归遍历,采用链表来存储遍历到的文件夹,如果是文件就直接输出) public void traverseFile(String path){ File[] files ...

  9. java读取文件的几种方式性能比较

    //普通输入流读取文件内容 public static long checksumInputStream(Path filename) { try(InputStream in= Files.newI ...

随机推荐

  1. 黑马程序员——有关protocol的小结

    在OC程序中经常会有这样的问题就是一个类想让其他类帮自己实现某些方法,然后再将结果返回给这个类:如何让一个类要找的代理去实现自己想要的方法呢? 这样就需要有一个协议,让能遵守协议的其他类都能实现协议中 ...

  2. C++学习之路--类的构建以及数据转换存储

    注意理解下面的代码,数据的处理与转换. 头文件: #ifndef STACK_H #define STACK_H class Stack { struct Link { void* data; Lin ...

  3. 设计模式知识搜集(c++)

    理解设计模式有两种途径,一种是看UML类图,一种是看代码理解实例,UML(一个简单的介绍)看懂了对理解设计模式大有裨益,代码容易陷进去,因此最好能找到适当且易于理解的应用场景,这下面实际上每个都是我收 ...

  4. 定制一个FlatBuffers编译器

    个人并不喜欢FlatBuffers编译器生成的代码,原因是我已经习惯了unix风格的代码. 不喜欢之处大致有以下: 1 命名法使用了Pascal命名法,而我个人习惯了小写字母加下划线式的unix式命名 ...

  5. 使用IIS6.0遇到问题后,常用的几种解决方法

    1.检查 .Net Framework,是否安装完全,不确定的情况下使用:aspnet_regiis.exe -i 或者 aspnet_regiis.exe -r 2.检查 IIS 6.0 其它相关配 ...

  6. 解决getOutputStream() has already been called for this response

    http://qify.iteye.com/blog/747842 —————————————————————————————————————————————————— getOutputStream ...

  7. oracle学习 四(持续更新中)无法为表空间 MAXDATA 中的段创建 INITIAL 区

    解决建立表的时候出现的 ORA-01658: 无法为表空间 MAXDATA 中的段创建 INITIAL 区 出现这个问题是因为表空间的大小不足,可以给他扩容这样的话也会多出来一个数据文件.具体写法如下 ...

  8. POJ3974 Palindrome (manacher算法)

    题目大意就是说在给定的字符串里找出一个长度最大的回文子串. 才开始接触到manacher,不过这个算法的确很强大,这里转载了一篇有关manacher算法的讲解,可以去看看:地址 神器: #includ ...

  9. angular select中ng-options使用

    function selectCtrl($scope) { $scope.selected = ''; $scope.model = [{ id: 10001, mainCategory: '男', ...

  10. 【转】Android 实现蘑菇街购物车动画效果

    原文出处:http://blog.csdn.net/wangjinyu501/article/details/38400479 1.思路   目前想到两种方式实现这种效果,一是使用Tween动画,直截 ...