A. 急救!!不小心java文件被包覆盖,还存有CLASS,如何恢复
反编译,很容易就能实现不过一般反编译回来之后所有的变量名可能就变了,使自动命名的了,你还要花一些时间改回来反编译软件很多,网上一艘就有
B. java 数据写入TXT文件中被覆盖的问题
FileOutputStream 还有一个构造函数:FileOutputStream (File file, boolean append)JDK 文档中对此方法的说明:“如果第二个参数为 true,则将字节写入文件末尾处,而不是写入文件开始处。”即可解决你的问题。改成:FileOutputStream fos = new FileOutputStream(file, true);
C. java修改properties文件 丢失内容
我注意到你写的这句FileOutputStream fos=new FileOutputStream(resourceFile);运行时会马上覆盖掉原有的内容,因此你这句话应该移到将键值对载入完成后。
修改如下,测试通过。
/***新增或修改资源文件的内容**@paramresourceFile*资源文件(绝对路径+文件名,不需要.properties后缀)*@paramkey键*@paramvalue值*/publicstaticvoidsetString(StringresourceFile,Stringkey,Stringvalue){Propertiesprop=newProperties();try{if(resourceFile.indexOf(".properties")==-1){resourceFile+=".properties";}FileInputStreamfis=newFileInputStream(resourceFile);try{prop.load(fis);fis.close();prop.setProperty(key,value);FileOutputStreamfos=newFileOutputStream(resourceFile);prop.store(fos,"CopyrightThcic");fos.close();}catch(IOExceptione){e.printStackTrace();System.out.println("修改资源文件:"+resourceFile+"异常!msg:"+e.getMessage());}}catch(FileNotFoundExceptione){e.printStackTrace();System.out.println("无法获得资源文件:"+resourceFile);}}
D. java给txt文件写入内容原内容被覆盖怎么办
之前已经覆盖的是无法找回了,建议楼主下次可以采用FileOutputStream:
/*** 追加文件:使用FileOutputStream,在构造FileOutputStream时,把第二个参数设为true 为追加内容** @param fileName* @param content*/public static void method1(String file, String conent) {BufferedWriter out = null ;try {out = new BufferedWriter( new OutputStreamWriter(new FileOutputStream(file, true )));out.write(conent);} catch (Exception e) {e.printStackTrace();} finally {try {out.close();} catch (IOException e) {e.printStackTrace();}}}
或者使用字符流的
FileWriter(StringfileName, booleanappend)
构造一个FileWriter对象,第二个参数为给出一个带有布尔值的参数,表示是否追加写入的数据。
望采纳 谢谢!
E. java 输出结果保存到txt中,但每循环一次就有一个输出,但是都会把原来的txt里面的内容覆盖掉
创建文件的时候,文件名.txt变成文件名+时间.txt通过时间做key,每次输出的文件名都不一样,也就不会覆盖了 ————————————————————————————如果是想输出到同一个文件,那么在打开文件,读写之前加一个fp.seek(fp.lenth());移动到文件最尾部就可以了
F. 为什么我用java把一个文件里的内容复制到另一个文件里,目标文件会被全部覆盖
你使用的流中可以设置参数为true表示将内容写到文件末尾,这样就不会覆盖了
G. 求大神,关于java 覆盖或者重写txt 文件内容的问题
importjava.io.FileNotFoundException;importjava.io.IOException;importjava.io.RandomAccessFile;publicclassFootballClub{privatestaticvoidchange(Stringnumber,Stringreplaced,StringfileName){RandomAccessFileraf=null;byte[]b=newbyte[1];byte[]bucket=newbyte[number.length()];try{raf=newRandomAccessFile(fileName,"rws");while(-1!=(raf.read(b))){Stringtemp=newString(b);if(number.endsWith(temp)){raf.seek(raf.getFilePointer()-number.length());raf.read(bucket,0,bucket.length);Stringtarget=newString(bucket);if(number.equals(target)){while(''==raf.read());raf.seek(raf.getFilePointer()-1);raf.write(replaced.getBytes(),0,replaced.length());break;}}}}catch(FileNotFoundExceptione){e.printStackTrace();}catch(IOExceptione){e.printStackTrace();}finally{if(null!=raf){try{raf.close();}catch(IOExceptione){}}}}publicstaticvoidmain(String[]args){change("0003","bbbb","test.ini");}}
H. 如何用JAVA实现文件的覆盖
在实际写入文件时,有两种写入文件的方式:覆盖和追加。其中“覆盖”是指清除原文件的内容,写入新的内容,默认采用该种形式写文件,“追加”是指在已有文件的末尾写入内容,保留原来的文件内容,例如写日志文件时,一般采用追加。在实际使用时可以根据需要采用适合的形式,可以使用: public FileOutputStream(String name, boolean append) throws FileNotFoundException 只需要使用该构造方法在构造FileOutputStream对象时,将第二个参数append的值设置为true即可。try {BufferedWriter out = new BufferedWriter(new FileWriter(outfilename));out.write(aString);out.close();} catch (IOException e) {}这种情况就是覆盖的try {BufferedWriter out = new BufferedWriter(new FileWriter(filename, true));out.write(aString);} catch (IOException e) {}这种情况是添加
I. JAVA 为什么向集合中存放新的数据时会覆盖掉旧的数据
应该是你Information2里面操作的person对象的问题,你一直使用的是同一个变量,没有重新创建过,所以放list里面放的都是一样的
J. java swing图片保存不了,一直被覆盖,文件夹始终只有一张图片,怎么改才行啊,求问
保存时的文件名要随机,不然肯定会把之前的覆盖。生成随机数作为文件名,用UUID也可以。