java中实现文件读取到程序中
字节输出流,相对与程序而言,从程序中读写二进制文件
String s = "JAVA 基础教程"; // 将要被写入的数据
int n = 100; // 将要被写入的数据
FileOutputStream fos = null; // 声明输出流对象
// 第1步:创建输出流对象
fos = new FileOutputStream("e:\\out.txt");
byte[] b1 = s.getBytes(); // 将要保存的数据转换为字节数组
byte[] b2 = "\r\n".getBytes(); // 文本文件中的换行符
byte[] b3 = String.valueOf(n).getBytes();
// 第2步:依次写入数据
fos.write(b1); // 写入字符串数据
fos.write(b2); // 写入换行符
fos.write(b3); // 写入整数数据
fos.close(); // 第3步:关闭输出流——释放资源
- **使用DataOutputStream类读写二进制文件
FilterOutputStream的子类
与FileOutputStream类结合使用写二进制文件**
String s = "JAVA 基础教程"; // 将要被写入的数据
FileOutputStream fos = null; // 声明输出流对象
DataOutputStream dos = null;//
byte[] b1 = s.getBytes(); // 将要保存的数据转换为字节数组
// 第1步:创建输出流对象
fos = new FileOutputStream("e:\\out.txt");
dos = new DataInputStream(fos);
dos.write(b1); // 写入字符串数据
dos.close();
fos.close();//释放资源
字节输入流,相对与程序,输入到程序中
FileInputStream fis = null;
// 第1步:创建输入流对象
fis = new FileInputStream("e:\\out.txt");
// 创建用于保存数据的字节数组
byte[] data = new byte[1024];
// 第2步:将所有数据读取到数组中
int i = fis.read(data);
// 将读取出的数据解析成字符串
String s = new String(data, 0, i);
// 在控制台输出
System.out.println(s);
fis.close(); // 第3步:关闭输入流对象
除了字节流读写文件,下面的是,字符流读写文件
字符输出流
//创建 FileReader对象对象
Reader fr=null;
StringBuffer sbf=null;//
try {
fr = new FileReader("D:\\myDoc\\简介.txt");//创建FileReader()对象,是Read的子类
char ch[]=new char[1024]; //创建字符数组作为中转站
sbf=new StringBuffer();
int length=fr.read(ch); //将字符读入数组
while ((length!= -1)) {//循环读取并追加字符
sbf.append(ch); //追加到字符串
length=fr.read();
}
}
fr.close();//释放资源
System.out.println(sbf.toString());//输出结果
----------
**提高字符流读取文本的效率 使用FileReader类与BufferedReader**
//BufferedReader类是Reader类的子类
//BufferedReader类带有缓冲区
//按行读取内容的readLine()方法
//创建 FileReader对象对象
Reader fr=null;
//
StringBuffer sbf=null;//
BufferedReader br = null;//
try {
fr = new FileReader("D:\\myDoc\\简介.txt");//创建
br = new BufferedReader(fr);//创建 BufferedReader
sbf=new StringBuffer();
String Str=fr.readLine(); //读取一行数据,如果读取完则返回null
while ((Str!= null)) {//循环读取并追加字符
sbf.append(Str); //追加到字符串
Str=fr.readLine();
}
}
br.close();
fr.close();//释放资源
System.out.println(sbf.toString());//输出结果
字符输出流
try {
//创建一个FileWriter对象
fw=new FileWriter(“D:\myDoc\简介.txt”);
fw.write("我热爱我的团队!"); //写入信息
fw.flush(); //刷新缓冲区
}catch(IOException e){
System.out.println(“文件不存在!”);
}
fw.close(); //关闭流释放资源
提高字符流写文本文件的效率 使用FileWriter类与BufferedWrite类
//BufferedWriter类是Writer类的子类
//BufferedWriter类带有缓冲区
//创建BufferedWriter类要用到FileWriter 类
//1.创建FileWriter类,写入字符“hello”到C:\\myTest.txt
FileWriter fw=new FileWriter("C:\\myTest.txt");
BufferedWriter bw=new BufferedWriter(fw);
bw.write("hello");
bw.flush();
fw.close();
//