`
加菲学Java
  • 浏览: 132601 次
  • 性别: Icon_minigender_1
  • 来自: 扬州
社区版块
存档分类
最新评论

IO输出流与输出流的想法和理解

阅读更多

在IO流的学习之中,还是感觉到难度的!尤其是刚开始的输入输出流从字面的意思和实际的用法就很混乱,有点搞不清!在查阅资料和反复的练习之后总结了一下,把意思彻底的理顺了一下,现在可以算是很好的理解!
以下就是代码即解释:



import java.io.*;

public class InputStreamDemo01{
public static void main(String args[]) throws Exception{
/*
  InputStreamc从字面上理解是输入的意思,想到的应该是向什么输入东西,
  其实不是这样的,而是把文件中的数据读取出来

  首先输出输出时相对于JVM而言
  InputStream-->输入流:从文件中输出内容到JVM中,即向JVM中输入内容
         文件-->JVM:文件中输出,JVM中输入
          而InputStream中的方法read():从文件向JVM中读取了内容(意思的确很别扭)
  
  最终结果可想而知是向JVM中输入数据
  (不要被字面的意思迷惑了,要能够清楚的认识到程序的执行)
*/
//第一步:使用Fiel类找到一个文件
File f=new File("f:"+File.separator+"test.txt");  //声明Fiel对象。如果不存在,则自动创建
//第二步:通过子类实例化父类
InputStream in=new FileInputStream(f);	 //准备好输出对象:out
//第三步:进行读写操作
byte b[]=new byte[1024];	
in.read(b);	 //把文件中的数据读入到JVM中
//第四步:关闭输出流
in.close();
System.out.println("内容是:"+new String(b));
}
}

 

import java.io.*;



public class OutputStreamDemo01{

       public static void main(String args[]) throws Exception{

              /*OutputStreamc从字面上理解是输出的意思,想到的应该是向什么输出东西,

                其实不是这样的,而是向文件中写入数据



                首先输出输出时相对于JVM而言

                OutputStream-->输出流:从JVM内存写数据到文件中,或者其他地方,相对于JVM就是输出

                         JVM-->文件:JVM输出了内容,文件中写入了内容

          而OutputStream中的方法write():从JVM中输出的内容写入到文件中

               

                最终结果可想而知是向文件中写入数据,及从JVM中输出,向某一文件输出数据

                (不要被字面的意思迷惑了,要能够清楚的认识到程序的执行)

              */



              //第一步:使用Fiel类找到一个文件

              File f=new File("f:"+File.separator+"test.txt");  //声明Fiel对象。如果不存在,则自动创建

              //第二步:通过子类实例化父类

              OutputStream out=new FileOutputStream(f);             //准备好输出对象:out,这种实例化方式会覆盖原来的所有内容

              //第三步:进行读写操作

              String str="Hello World";                                        //准备一个字符串

              byte b[]=str.getBytes();                                     //将字符串转换为字节byte数组

              out.write(b);                                                           //将内容输出,写入到文件

              //第四步:关闭输出流

              out.close();

       }

}
 

分享到:
评论

相关推荐

    程序员面试宝典-java-interview-dictionary-master.zip

    4. 文件与IO流:理解文件操作,熟悉输入输出流的分类及使用,掌握NIO(New IO)的使用。 三、高级篇 1. 设计模式:深入理解23种设计模式,包括单例、工厂、观察者、装饰器、代理等,并能灵活运用到实际项目中。 2. ...

    day01-Java入门

    8. **IO和NIO**:学习输入输出流以及非阻塞I/O模型。 9. **反射机制**:允许在运行时动态检查和操作类及对象。 10. **JavaFX或Swing**:用于构建图形用户界面的库。 通过不断实践和学习,你将逐渐掌握这些知识点,...

    java基础总结大全共94页.pdf.zip

    14. **输入输出流**:了解如何读写文件,网络通信,以及使用IO流处理数据。 15. **线程**:并发编程的基础,了解线程的创建、同步和生命周期管理。 通过深入学习这些Java基础,开发者可以为进阶的Java开发打下坚实...

    张孝祥正在整理Java就业面试题大全0719.doc

    7. **IO/NIO**:了解输入输出流的基本概念,掌握FileInputStream、FileOutputStream、BufferedReader、BufferedWriter等类的使用,以及NIO(非阻塞I/O)在Java中的应用。 8. **网络编程**:TCP/IP协议的理解,...

    cpp_trace-开源

    由于cpp_trace遵循STL io流接口,开发者可以利用现有的io流操作符(如和>>)无缝地集成到现有代码中,无需学习新的API。这极大地降低了学习曲线,同时也提高了代码的可读性和可维护性。 ### 开源软件的优势 作为一...

    流程图介绍

    通过创建流程图,我们可以清晰地表达想法,找出流程中的瓶颈和优化点,从而提升工作效率和质量。在实际工作中,可以利用各种软件工具,如Visio、Draw.io等,来辅助绘制流程图,让设计更加便捷高效。 总结来说,流程...

    HOT-51增强版开发板使用说明

    HOT-51增强版开发板的核心是51系列单片机,它通常包含一个或多个IO端口,模拟和数字输入/输出引脚,以及内置定时器和计数器。开发板上可能还包括以下组件: 1. **电源模块**:为开发板提供稳定的电源,一般包括直流...

    简单版C++贪吃蛇

    这需要使用到C++的IO流库(iostream)和C语言的`conio.h`库(用于处理控制台输入,但不是标准库)或者更现代的`ncurses`库(跨平台的终端控制库)。 【游戏逻辑实现】 1. **初始化**:游戏开始时,设定蛇的初始...

    thinking_in_java:我对B.Eckel的“ Java思维”中的Java代码的看法

    6. IO流:Java的IO流系统是处理输入输出的重要部分。Eckel讲解了字节流和字符流的区别,以及如何使用缓冲区提高效率。他还介绍了NIO(New IO)框架,展示了更高效、非阻塞的IO操作方式。 7. 异常处理:Java的异常...

    traykeller.github.io:托盘凯勒(Tray Keller)的博客

    通过这个平台,他分享自己的想法、经验和技术教程。 【描述】"traykeller.github.io:托盘凯勒(Tray Keller)的博客" 的描述简单明了,直接复述了标题,表明这是一个以个人名字为域名的博客网站,主要关注点在于...

    51单片机智能小车

    模拟PWM控制程序则利用单片机的IO口输出PWM信号,通过调节电机转速来改变小车行驶速度。这些实验不仅让学习者能够直观地看到理论和实践的结合,还能让他们在操作中加深对电子技术的理解。 总的来说,51单片机智能...

    Java:我的Java代码和项目

    5. **IO流**:用于读写文件、网络通信等,分为字节流和字符流,包括输入流和输出流。 6. **多线程**:Java内置了对多线程的支持,可以创建Thread对象或实现Runnable接口来实现并发执行。 7. **网络编程**:Java...

    think-aloud-code:程式

    5. **IO流**:Java的IO流系统允许程序读写文件、网络数据,以及其他输入输出源。这包括字符流、字节流、缓冲流和转换流等概念。 6. **多线程**:Java支持多线程编程,可以同时执行多个任务。我们将探讨线程的创建、...

    C# 控制台数字游戏

    这个项目旨在帮助初学者理解C#的基础语法、控制流和逻辑判断,同时引入了随机数的概念,增加了游戏的趣味性和挑战性。下面我们将深入探讨该项目涉及的C#知识点。 1. **C#基础语法**:C#是一种面向对象的编程语言,...

    poc:概念验证,stackoverflow问题

    5. **IO流**:Java的IO流系统用于处理输入和输出,包括文件操作、网络通信等,理解流的层次结构和选择合适的流类型是重要的。 6. **Lambda表达式和流API**:自Java 8引入以来,lambda表达式和流API简化了函数式编程...

    SPDX-license-detection-package:检测到SPDX主文件之一,并将其​​作为markdown打印到终端。 Gsoc 2021 Dart组织。 想法清单示例项目

    4. **Dart实现**:利用Dart的特性,如强类型、异步处理、流和dart:io库,实现高效且易于维护的代码。 5. **命令行界面**:提供一个简单易用的命令行接口,用户可以通过命令行参数指定输入文件或目录,工具会自动...

    高级FPGA设计:结构、实现与优化(英文)

    4. **输入/输出(Input/Output,IO)**模块:用于处理芯片外部的信号输入和输出。 #### 四、FPGA的设计流程 FPGA的设计流程主要包括以下几个步骤: 1. **需求分析**:明确设计目标和性能要求。 2. **行为级设计**:...

    单片机开发板原理图(89SXX和STC系列)

    - **定时器/计数器接口**:P3.4(T0)和P3.5(T1)可以配置为输入捕捉或输出比较等功能。 - **外部中断接口**:P3.2(INT0)和P3.3(INT1)用于处理外部中断事件。 - **数据总线扩展接口**:通过P0端口作为地址/...

    Ideas:这是为了存储在几种编程语言中遇到的所有想法的工作

    5. **IO/NIO**:输入输出流的使用,非阻塞I/O模型在高并发场景下的优势。 6. **设计模式**:单例、工厂、观察者、装饰器、代理等常见设计模式的应用。 7. **JVM内存管理**:理解堆内存、栈内存、方法区、垃圾回收...

Global site tag (gtag.js) - Google Analytics