java读/写文件

读取文件参考:https://blog.csdn.net/weixin_42129373/article/details/82154471

写入文件参考:https://blog.csdn.net/BanketBoy/article/details/86504704

https://www.cnblogs.com/chenpi/p/5498731.html

 1 package text;
 2
 3 import java.io.BufferedReader;
 4 import java.io.BufferedWriter;
 5 import java.io.File;
 6 import java.io.FileNotFoundException;
 7 import java.io.FileReader;
 8 import java.io.FileWriter;
 9 import java.io.IOException;
10 import java.util.Arrays;
11 import java.util.Scanner;
12
13 import javax.annotation.processing.FilerException;
14 /*从input1.txt和input.txt文本文档轮流按行读取数据并按行写入output.txt文本文档
15  */
16
17 public class Main {
18     public static void main(String[] args) {
19         String aString = "E:\\ACM\\test\\input1.txt";//文件的路径
20         String bString = "E:\\ACM\\test\\input.txt";
21         String cString = "E:\\ACM\\test\\output.txt";
22
23         try {
24             FileReader aFileReader = new FileReader(aString);//字符流用于读/写文件
25             FileReader bFileReader = new FileReader(bString);
26             FileWriter cFileWriter = new FileWriter(cString);//如果写入第二参数为true,则为追加写入
27
28             BufferedReader aBufferedReader = new BufferedReader(aFileReader);//包装字符流以提高效率
29             BufferedReader bBufferedReader = new BufferedReader(bFileReader);
30             BufferedWriter cBufferedWriter = new BufferedWriter(cFileWriter);
31
32             String tempString = aBufferedReader.readLine();//按行读取
33             while (tempString != null) {
34                 cBufferedWriter.write(tempString);
35                 cBufferedWriter.newLine();//写入换行
36
37                 tempString = bBufferedReader.readLine();
38                 cBufferedWriter.write(tempString);
39                 cBufferedWriter.newLine();
40
41                 tempString = aBufferedReader.readLine();
42             }
43
44             cBufferedWriter.close();//关闭流
45             aBufferedReader.close();
46             bBufferedReader.close();
47             aFileReader.close();
48             bFileReader.close();
49             cFileWriter.close();
50         } catch (FileNotFoundException e) {//没有try-catch会报错
51             e.printStackTrace();
52         } catch (IOException e) {
53             e.printStackTrace();
54         }
55     }
56 }

原文地址:https://www.cnblogs.com/hemeiwolong/p/12332332.html

时间: 2024-10-12 07:48:23

java读/写文件的相关文章

java并发读&写文件

最近在看Brian Goetz 的<<Java并发实战>>,这本书有两个版本,电子工业出版社的译本很糟糕,建议使用机械工业出版社出版出版的书籍. 在看到第三四章的时候突然想到了多线程读写文件,同时遇到一些书中没有的问题 1, 如何保证组合对象的安全性? 2, 如何判断不变性的约束条件 3, 如何不通过synchronized关键字和锁进行同步处理? 下面是一段代码, 用来从source 读取数据,通过多线程写入target文件中 思路: 1, 如何read/write文件? 2,

Java读properties文件中文乱码问题的解决方法

java读properties文件,包含中文字符的主要有两种: 1.key中包含中文字符的(value中也有可能包含) 2.key中不包含中文字符的(value中有可能包含) 1.key中包含中文字符 可以使用java自带工具native2ascii.exe(Java\jdk1.x.x\bin\native2ascii.exe),转换文件编码格式 示例: native2ascii -encoding 8859_1 c:\a.properties c:\b.properties 即将 c:\a.p

使用 Java 程序写文件时,记得要 flush()

使用 Java 程序往磁盘写文件时碰到了这样的问题:文件写不全. 假如内容(StringBuffer/StringBuilder)有 100W 个字符,但是通过 Java 程序写到文件里的却不到 100W ,部分字符不见了. 代码大致是这样的: 1 private void writeToDisk() throws Exception { 2 File file = new File("FILE_PATH"); 3 OutputStreamWriter osw = null; 4 os

java语言写文件内容

import java.io.File;import java.io.FileWriter;import java.io.IOException; public static void main(String[] args) { String fileName = "D:/softwareinstall/apache-jmeter-2.13/testdata/medicalrecord.txt"; String content = vars.get("medicalrecor

java读XML文件

XML文件设计为传输和存储数据,其焦点为数据内容. HTML设计为用来显示数据, 其焦点为数据外观. XML仅仅是文本文件,任何文本编辑器一般情况下都能对其进行编辑. XML没有预定义的标签,并且设定的标签是大小写敏感的. 标签还必须: 必须有根元素 属性值需要加引号 空格等会被保留 必须关闭标签 JAVA读取XML文件 1,language.xml文件内容为: <?xml version="1.0" encoding = "UTF-8" ?> <

java读word文件

Java POI 读取word文件 Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能. 1.读取word 2003及word 2007需要的jar包 读取 2003 版本(.doc)的word文件相对来说比较简单,只需要 poi-3.5-beta6-20090622.jar 和 poi-scratchpad-3.5-beta6-20090622.jar 两个 jar 包即可, 而 2007 版本(.

Java中写文件操作

OutputStream 和 Writer OutputStream类(直接操作byte数组) 该类是字节输出流的抽象类,定义了输出流的各种操作方法.如下图是OutputStream的层次结构: ByteArrayOutputStream:字节数组流,可以捕获内存缓冲区的数据,转换为字节数组.该类有两个构造方法: new ByteArrayOutputStream(); new ByteArrayOutputStream(int size);    //size表示初始化字节数组缓冲区的大小 B

Java不写文件,LOAD DATA LOCAL INFILE大批量导入数据到MySQL的实现

Mysql loaddata的使用 数据库中,最常见的写入数据方式是通过SQLINSERT来写入,另外就是通过备份文件恢复数据库,这种备份文件在MySQL中是SQL脚本,实际上执行的还是在批量INSERT语句. 在实际中,常常会遇到两类问题:一类是数据导入,比如从word.excel表格或者txt文档导入数据(这些数据一般来自于非技术人员通过OFFICE工具录入的文档):一类数据交换,比如从MySQL.Oracle.DB2数据库之间的数据交换. 这其中就面临一个问题:数据库SQL脚本有差异,SQ

Java 多线程写文件

不废话,上马. import java.io.File; import java.io.IOException; import java.io.RandomAccessFile; import java.nio.channels.FileChannel; import java.nio.channels.FileLock; /** * @author DBJ * */ public class MyThreadInfoWritor { private String filename; /** *