java IO使用Demo

public class ReadByteStream {

    public static void main(String[] args) {
        //stream 字节流
        //reader,writer 字符流
        //input 读取外部东西,
        //output 输出
        try { //read byte stream,mytext.txt is exits
            FileInputStream inputStream=new FileInputStream("mytext.txt");
            byte []in=new byte[60];
            inputStream.read(in);//把字节读入数组中

            //String str=new String(in);默认是GBK
            String str=new String(in,"UTF-8");//是乱码
            System.out.println(str);

        } catch (FileNotFoundException e) {

            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }

}
public class WriteByteStream {

    public static void main(String[] args) {

        try {
            FileOutputStream fileOutputStream=new FileOutputStream("mytext1.txt");
            String str="hello ,jack...";
            byte []out=str.getBytes();
            try {
                fileOutputStream.write(out);
            } catch (IOException e) {

                e.printStackTrace();
            }

        } catch (FileNotFoundException e) {

            e.printStackTrace();
        }

    }

}
public class CopyByByteStream {

    public static void main(String[] args) {

        try {
            FileInputStream inputStream=new FileInputStream("water.jpg");
            FileOutputStream outputStream=new FileOutputStream("newwater.jpg");

            byte []in=new byte[50]; //现在只是读取了50个字节,不能读取完整的图片

        //    inputStream.read(in);  //不能读取完整的图片
        //    outputStream.write(in);

         //    inputStream.read(in);返回int类型,如果返回-1表示没有数据了

            while(inputStream.read(in)!=-1)//表示还有数据,就写入
            {
                outputStream.write(in);
            }

            inputStream.close();
            outputStream.close();

        } catch (FileNotFoundException e) {

            e.printStackTrace();
        } catch (IOException e) {

            e.printStackTrace();
        }

    }

}
public class FileReaderAndFileWriter {

    public static void main(String[] args) {

        try {
            //文件写入读取
            FileReader fileReader=new FileReader("java.txt");
            BufferedReader bufferedReader=new BufferedReader(fileReader);
            //字符流包装为缓冲流
            FileWriter fileWriter=new FileWriter("java_new_1");
            BufferedWriter bufferedWriter=new BufferedWriter(fileWriter);
            String len;
            while ((len=bufferedReader.readLine())!=null) {

                bufferedWriter.write(len+"\n");
            }
            bufferedWriter.flush();//注意writer有关的都要flush()
            bufferedWriter.close();
            bufferedReader.close();
            fileReader.close();
            fileWriter.close();
            System.out.println("Done");
        } catch (FileNotFoundException e) {

            e.printStackTrace();
        } catch (IOException e) {

            e.printStackTrace();
        }

    }

}
public class BufferReader {

    public static void main(String[] args) {
        try {
            FileInputStream fileInputStream=new FileInputStream("java.txt");
            InputStreamReader isr=new InputStreamReader(fileInputStream);//字节流转化为字符流

            BufferedReader reader=new BufferedReader(isr);

            FileOutputStream fileOutputStream=new FileOutputStream("java_new_buffered.txt");
            OutputStreamWriter osw=new OutputStreamWriter(fileOutputStream);
            BufferedWriter writer=new BufferedWriter(osw);

            String len;
            while ((len=reader.readLine())!=null) {
                writer.write(len);
            }
            writer.flush();
            writer.close();
            osw.close();
            fileInputStream.close();
            fileOutputStream.close();
            System.out.println("done");

        } catch (FileNotFoundException e) {

            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }

}
public class ReadBufferByStream {

    public static void main(String[] args) {

        try {
            FileInputStream fileInputStream=new FileInputStream("vidio.wmv");
            BufferedInputStream bufferedInputStream=new BufferedInputStream(fileInputStream);

            FileOutputStream fileOutputStream=new FileOutputStream("E://TextVidio.wmv");
            BufferedOutputStream bufferedOutputStream=new BufferedOutputStream(fileOutputStream);

            byte []by=new byte[100];
            while (    bufferedInputStream.read(by)!=-1) {
                bufferedOutputStream.write(by);

            }

            bufferedInputStream.close();
            bufferedOutputStream.close();
            fileInputStream.close();
            fileOutputStream.close();
            System.out.println("vidio create sucess....");

        } catch (FileNotFoundException e) {

            e.printStackTrace();
        } catch (IOException e) {

            e.printStackTrace();
        }

    }

}
时间: 2024-10-13 23:00:16

java IO使用Demo的相关文章

黑马程序员-Java IO流

--Java培训.Android培训.iOS培训..Net培训.期待与您交流!-- 一.概述 Java中与IO相关的类有很多,都集中在java.io中,都是以流的形式操作的,流是有一定的顺序,像一个管道一样,它的本质是传输数据.根据数据类型的不同可以分为字节流和字符流,根据流向的不同可以分为输入流和输出流. 字符流:因为数据有不同的编码,可以对字符进行不同的操作,其本质还是基于字节流,然后再查询相应的码表.一般用于处理纯文本数据. 字节流:可以处理所有类型数据,二进制文件(图片,音频等). 输入

黑马程序员——【Java基础】——Java IO流

一.IO概述 1.IO:是Input.Output的缩写. 2.特点: (1)用于处理设备间的数据传输. (2)Java对数据的处理是通过“流”完成的. (3)Java用于操作流的对象都在IO包中. (4)流按操作分为两种:字节流和字符流. (5)流按流向分为:输入流和输出流(输入输出是相对于“内存”而言的). 3.IO流常用基类 (1)字节流abstract基类:InputStream.OutputStream: (2)字符流抽象基类:Reader.Writer: 二.字符流(Reader.W

Java—IO流 字节流

IO流(输入流.输出流),又分为字节流.字符流. 流是磁盘或其它外围设备中存储的数据的源点或终点. 输入流:程序从输入流读取数据源.数据源包括外界(键盘.文件.网络-),即是将数据源读入到程序的通信通道. 输出流:程序向输出流写入数据.将程序中的数据输出到外界(显示器.打印机.文件.网络-)的通信通道. 字节流 1.InputStream.OutputStream InputStream抽象了应用程序读取数据的方式 OutputStream抽象了应用程序写出数据的方式 2.读到文件结尾,称为EO

2.熟悉Java基本类库系列——Java IO 类库

Java中常用的IO操作基本上可以分为四大部分,分别是:File类操作.RandomAccessFile类操作.字节流操作.字符流操作.只要熟练掌握了本文中所列举的所有例子,基本上对于Java的IO流操作就可以说是掌握了. 下面将以JUnit测试用例的方式,用一个个例子的方式列出这四大部分中常用的操作例子. 一.File类操作 File类操作定义了最基本的.与操作系统的稳健系统相关的操作,可以对文件夹.文件进行一系列的操作.  1.常用的一些用法 //1.两个常量 @Test public vo

java io系列01之 "目录"

javaIO系列转载出处:http://www.cnblogs.com/skywang12345/p/io_01.html 该分类所有博文,均转载同一作者,后边不再累赘标名. java io 系列目录如下: 01. java io系列01之  "目录" 02. java io系列02之 ByteArrayInputStream的简介,源码分析和示例(包括InputStream) 03. java io系列03之 ByteArrayOutputStream的简介,源码分析和示例(包括Ou

慕课网_文件传输基础——Java IO流

fadf 第1章 文件的编码 1-1 文件的编码 (15:07) 第2章 File 类的使用 2-1 File 类常用 API 介绍 (10:50) import java.io.File; import java.io.IOException; public class FileDemo { public static void main(String[] args) { File file = new File("E:\\helloworld\\java"); System.out

Java IO RandomAccessFile 任意位置读/写

随机读写类 RandomAccessFile的唯一父类是Object,与其他流父类不同.是用来访问那些保存数据记录的文件的,这样你就可以用seek( )方法来访问记录,并进行读写了.这些记录的大小不必相同:但是其大小和位置必须是可知的. RandomAccessFile是不属于InputStream和OutputStream类系的.实际上,除了实现DataInput和DataOutput接口之外(DataInputStream和DataOutputStream也实现了这两个接口),它和这两个类系

JAVA IO 专题

首先看一下常用的几种编码方式 public class EncodeDemo { public static void main(String[] agrs)throws IOException { String s="中国ABC"; byte[] byte1=s.getBytes(); //默认采用项目的UTF-8编码 byte[] byte2=s.getBytes("GBK");//显示指定编码方式为GBK byte[] byte3=s.getBytes(&qu

Java IO整理

写在前面:本文章基本覆盖了java IO的全部内容,java新IO没有涉及,因为我想和这个分开,以突出那个的重要性,新IO哪一篇文章还没有开始写,估计很快就能和大家见面.照旧,文章依旧以例子为主,因为讲解内容的java书很多了,我觉的学以致用才是真.代码是写出来的,不是看出来的. 最后欢迎大家提出意见和建议. [案例1]创建一个新文件 1 2 3 4 5 6 7 8 9 10 11 import java.io.*; class hello{     public static void mai