Heim > Java > javaLernprogramm > Hauptteil

Analyse der IO-Instanzanwendung in Java

WBOY
Freigeben: 2023-05-06 12:19:06
nach vorne
1032 Leute haben es durchsucht

    一、IO概念

    • I/O 即输入Input/ 输出Output的缩写,其实就是计算机调度把各个存储中(包括内存和外部存储)的数据写入写出

    • java中用“流(stream)”来抽象表示这么一个写入写出的功能,封装成一个“类”,都放在java.io这个包里面。

    • java.io包下提供了各种“流”类和接口,用以获取不同种类的数据,并 通过标准的方法输入或输出数据

    1.什么是输入

    程序从内存中读取数据叫输入Input。

    2.什么输出(Output)

    程序把数据写入到内存中叫输出Output。

    二、流的分类

    • 按操作数据单位不同分为:字节流(8 bit),字符流(16 bit)

    • 按数据流的流向不同分为:输入流,输出流

    • 按流的角色的不同分为:节点流,处理流

    IO流体系

    Analyse der IO-Instanzanwendung in Java

    1、InputStream(字节流)

    示例:

     public static void main(String[] args) {
           iprt();
        }
        public static void ipst(){
            InputStream inputStream = null;
            try {
                inputStream = new FileInputStream("C:\\1.txt");
                int i;
                while ( (i = inputStream.read()) != -1){
                    System.out.print((char) i);
                }
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            } finally {
                try {
                    if (inputStream != null){
                        inputStream.close();
                    }
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    Nach dem Login kopieren

    说明:使用InputStream向内存中读如文件数据。

    2、OutputStream(字节流)

    示例:

    public class ImageCopy {
        public static void main(String[] args) {
            try(
                    InputStream inputStream = new FileInputStream("D:\\KDA.jpg");
                    OutputStream outputStream = new FileOutputStream("E:\\aaa\\KDA.jpg")
             ){
                byte[] bytes = new byte[1024];
                int i;
                while ((i = inputStream.read(bytes)) != -1){
                    outputStream.write(bytes,0,i);
                }
            }  catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    Nach dem Login kopieren

    说明:使用输入流与输出流结合实现图片复制的功能。

    3、Reader(字符流)

    示例:

    public static  void iprt(){
            Reader reader = null;
            try {
                reader = new FileReader("C:\\1.txt");
                int i ;
                while ((i =  reader.read()) != -1){
                    System.out.print((char) i);
                }
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            } finally {
                    try {
                        if (reader != null) {
                            reader.close();
                        }
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
            }
        }
    Nach dem Login kopieren

    说明:使用Reader(字符流)从文件中读入数据。

    4、Writer(字符流)

    public static  void iprt(){
            Reader reader = null;
            Writer writer = null;
            try {
                reader = new FileReader("C:\\Users\\52425\\Desktop\\1.txt");
                writer = new FileWriter("C:\\2.txt");
                int i ;
                while ((i =  reader.read()) != -1){
                    writer.write(i);
                }
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            } finally {
                    try {
                            writer.close();
                            reader.close();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
            }
        }
    Nach dem Login kopieren

    说明:使用字符流实现文件复制功能。

    Das obige ist der detaillierte Inhalt vonAnalyse der IO-Instanzanwendung in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Verwandte Etiketten:
    Quelle:yisu.com
    Erklärung dieser Website
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
    Beliebte Tutorials
    Mehr>
    Neueste Downloads
    Mehr>
    Web-Effekte
    Quellcode der Website
    Website-Materialien
    Frontend-Vorlage
    Über uns Haftungsausschluss Sitemap
    Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!