我用fileinputestream建立一个.txt文件,现在需要重新写入数据,将新写入的数据覆盖原来的内容,用Java语句如何实现!

解决方案 »

  1.   

    FileOutputStream fos = new FileOutputStream("filepath",false);
      

  2.   

    FileWriter fw=new FileWriter(file,false),第二个参数表示是否追加写入。
      

  3.   

    我想说的是,FileOutputStream fos = new FileOutputStream("filepath"),不传第二个参数时,默认就会覆盖文件原来的内容,但若LZ想在文件后面追加内容时,第二个参数就要传入true
      

  4.   


    对楼主只要传路径就可以了, 默认为false.
      

  5.   

    对楼主只要传路径就可以了, 默认为false.nice ...
      

  6.   

    FileOutputStream fos = new FileOutputStream("filepath");就可以了
    后面内容是追加,就是楼上说的FileOutputStream fos = new FileOutputStream("filepath",true);
    还有个要说明,应该不是叫“覆盖”吧,是clear原来的文件内容,然后再重新写入!
      

  7.   

    public FileOutputStream(String name,
                            boolean append)
                     throws FileNotFoundException创建一个向具有指定 name 的文件中写入数据的输出文件流。如果第二个参数为 true,则将字节写入文件末尾处,而不是写入文件开始处。创建一个新 FileDescriptor 对象来表示此文件连接。 
    首先,如果有安全管理器,则用 name 作为参数调用 checkWrite 方法。 如果该文件存在,但它是一个目录,而不是一个常规文件;或者该文件不存在,但无法创建它;抑或因为其他某些原因而无法打开它,则抛出 FileNotFoundException。 
    参数:
    name - 与系统有关的文件名
    append - 如果为 true,则将字节写入文件末尾处,而不是写入文件开始处 
    抛出: 
    FileNotFoundException - 如果该文件存在,但它是一个目录,而不是一个常规文件;或者该文件不存在,但无法创建它;抑或因为其他某些原因而无法打开它。 
    SecurityException - 如果存在安全管理器,且其 checkWrite 方法拒绝对文件进行写入访问。
      

  8.   

    不加参数时是表示覆盖!  因此只要FileOutputStream fos = new FileOutputStream("filepath");就可以了不用传第二个参数了!!!
      

  9.   

    各位大哥大姐,那个不是覆盖,使用FileOutputStream只是将里面的东西拿出来,里面就空了,但是txt文件就会为空,里面什么都没有啊!