欢迎使用CSDN-markdown编辑器

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();
    //
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值