赞
踩
Java程序中,对于数据的输入/输出操作以”流(stream)” 的方式进行。java.io包下提供了各种“流”类和接口,用以获取不同种类的数据,并通过标准的方法输入或输出数据。
字节流是由字节组成的,字符流是由字符组成的. Java里字符由两个字节组成.字节流是最基本的,所有的InputStream和OutputStream的子类都是,主要用在处理二进制数据,它是按字节来处理的。通过其子类FileInputStream和FileOutputStream来实现对文件的读写。
- public static void out(){
- //1.确定目标文件
- File file =new File("E:\\java基础学习\\帅.txt");//如果没有该文件将自动创建,前提是上级目录存在
- //2.新建一个输出流对象
- try {
- FileOutputStream fileOutputStream =new FileOutputStream(file,false);
- //append为true表示追加
- //3.确定要输出的内容
- String info ="学java要努力\r\n";// \r\n 表示换行
- //4.向目标文件写入内容
- try {
- fileOutputStream.write(info.getBytes());
- System.out.println("写入成功");
- //5.关闭流
- fileOutputStream.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- } catch (FileNotFoundException e) {
- e.printStackTrace();
- }
-
-
- }
- private static void in() {
- //1.确定目标文件
- File file =new File("E:\\java基础学习\\帅.txt");//文件路径写自己的
- //2.新建一个输入流对象
- //jdk新增语法,实现了closeable接口的类可以在try()中实现自动关闭
- try(
- FileInputStream fileInputStream =new FileInputStream(file)
- ) {
-
- byte [] bytes =new byte[1024*10];
- StringBuffer stringBuffer =new StringBuffer();
- int len =-1;//表示每次读取的字节长度
- //把数据读取到字节数组中,并且返回读取的字节数,若字节数为-1,则表示已经读完
- while((len=fileInputStream.read(bytes))!=-1){
- stringBuffer.append(new String(bytes));
- }
- //关闭流
- // fileInputStream.close();
- System.out.println(stringBuffer);
- } catch (IOException e) {
- e.printStackTrace();
- }
-
- }
目录
- package 字节流;
-
- import java.io.*;
-
- /**
- * 一般操作非文本文件,使用字节流
- * 输出流超类OutputStream,对文件的输入流使用子类FileOutputStream
- * 输入流超类InputStream,对文件的输入流使用子类FileInputStream
- *
- * 每次只操作一个字节
- * 默认每次执行写入操作会直接把数据写入文件
- */
- public class ByteStreamDemo {
- public static void main(String[] args) {
-
- out();
- in();
- }
- //读文件
- private static void in() {
- //1.确定目标文件
- File file =new File("E:\\java基础学习\\帅.txt");//文件路径写自己的
- //2.新建一个输入流对象
- //jdk新增语法,实现了closeable接口的类可以在try()中实现自动关闭
- try(
- FileInputStream fileInputStream =new FileInputStream(file)
- ) {
-
- byte [] bytes =new byte[1024*10];
- StringBuffer stringBuffer =new StringBuffer();
- int len =-1;//表示每次读取的字节长度
- //把数据读取到字节数组中,并且返回读取的字节数,若字节数为-1,则表示已经读完
- while((len=fileInputStream.read(bytes))!=-1){
- stringBuffer.append(new String(bytes));
- }
- //关闭流
- // fileInputStream.close();
- System.out.println(stringBuffer);
- } catch (IOException e) {
- e.printStackTrace();
- }
-
- }
-
- //写文件
- public static void out(){
- //1.确定目标文件
- File file =new File("E:\\java基础学习\\帅.txt");//如果没有该文件将自动创建,前提是上级目录存在
- //2.新建一个输出流对象
- try {
- FileOutputStream fileOutputStream =new FileOutputStream(file,false);
- //append为true表示追加
- //3.确定要输出的内容
- String info ="学java要努力\r\n";// \r\n 表示换行
- //4.向目标文件写入内容
- try {
- fileOutputStream.write(info.getBytes());
- System.out.println("写入成功");
- //5.关闭流
- fileOutputStream.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- } catch (FileNotFoundException e) {
- e.printStackTrace();
- }
-
-
- }
- }
例如:以上就是今天要讲的内容,本文仅仅简单介绍了字节流的使用,而java的io流框架中提供了许多对字节,字符的操作方法
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。