Java: Copy textfile content to another without replacing
我想获取用户选择的一个文本文件的内容,并将其添加到另一个文本文件中,而不替换当前内容。例如:
更新:如何以编号方式将其添加到第二个文件中?
文本文件1:
AAA BBB CCC
AAA BBB CCC
文本文件2:(复制后)
EFFFGGG
AAA BBB CCC
AAA BBB CCC
更新:我不得不删除我的代码,因为它可能被认为是剽窃,这是回答,所以我知道该怎么做,谢谢大家帮助我。
试试这个你必须使用
1 |
这将以附加模式打开文件:
据JavaDoc说
参数:文件名字符串依赖于系统的文件名。
附加布尔值如果为真,则数据将写入文件的结尾而不是开头。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | public static void main(String[] args) { FileReader Read = null; FileWriter Import = null; try { Scanner scanner = new Scanner(System.in); System.out.print("Enter a file name:"); System.out.flush(); String filename = scanner.nextLine(); File file = new File(filename); Read = new FileReader(filename); Import = new FileWriter("songstuff.txt",true); int Rip = Read.read(); while(Rip!=-1) { Import.write(Rip); Rip = Read.read(); } } catch(IOException e) { e.printStackTrace(); } finally { close(Read); close(Import); } } public static void close(Closeable stream) { try { if (stream != null) { stream.close(); } } catch(IOException e) { // JavaProgram(); } } |
您可以使用Apache Commons IO。
阿帕奇公地IO
例子:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | import java.io.File; import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; import org.apache.commons.io.FileUtils; public class HelpTest { public static void main(String args[]) throws IOException, URISyntaxException { String inputFilename ="test.txt"; // get from the user //Im loading file from project //You might load from somewhere else... URI uri = HelpTest.class.getResource("/" + inputFilename).toURI(); String fileString = FileUtils.readFileToString(new File(uri)); // output file File outputFile = new File("C:\\test.txt"); FileUtils.write(outputFile, fileString, true); } } |
使用
参考:文件编写器
打开进行写入的文件通道可能处于追加模式。http://docs.oracle.com/javase/6/docs/api/java/nio/channels/filechannel.html
还可以看看……http://DOCS.Oracle .COM/JavaSe/ 6 /DOCS/API/Java/IO/FielOutStudio.html HTML文件输出流(JavaIO.Frm,BooLeIn)
追加文件
为给定的文件对象构造FileWriter对象。如果第二个参数为真,那么字节将写入文件的结尾而不是开头。
1 |