Java 输入/输出 反射
Java 输入/输出 反射
输入输出和反射
一、数据流的基本概念
流一般分为
(
Input
Stream
)
和输出流
(
Output
Stream
)
两类,但这种划分并不是绝对的。比如一个文件,当向其中写数
据时,它就是一个输出流;当从其中读取数据时,它就是一个输
入流。当然,键盘只是一个数人流,而屏幕则只是一个输出流。
java
的标准数据流:
标准输入输出指在字符方式下
(如
DOS
)
,
程序与系统进行交互的方式,分为三种:
标准输入
studin,
对象是键盘。
标准输出
stdout,
对象是屏幕。
标准错误输出
stderr,
对象也是屏幕。
二、
java.io
包中的数据流和文件类
字节流:从
InputStream
和
OutputStream
派生出来的一系列
类。这流以字节
(byte)
为基本处理单位。
InputStream
、
OutputStream
FileInputStream
、
FileOutputStream
PipedInputStream
、
PipedOutputStream
ByteArrayInputStream
、
ByteArrayOutputStream
FilterInputStream
、
FilterOutputStream
DataInputStream
、
DataOutputStream
BufferedInputStream
、
BufferedOutputStream
字符流:
从
Reader
和
Writer
派生出的一系列类,
这类流以
16位的Unicode
码表示的字符为基本处理单位。
Reader
、
Writer
InputStreamReader
、
OutputStreamWriter
FileReader
、
FileWriter
CharArrayReader
、
CharArrayWriter
PipedReader
、
PipedWriter
FilterReader
、
FilterWriter
BufferedReader
、
BufferedWriter
StringReader
、
StringWriter
三、字节流方法
InputStream
和
OutputStream
read()
:从流中读入数据
skip()
:跳过流中若干字节数
available()
:返回流中可用字节数
mark()
:在流中标记一个位置
reset()
:返回标记过得位置
markSupport()
:是否支持标记和复位操作
close()
:关闭流
int
read()
:
从输入流中读一个字节,形成一个
0
~
255
之间
的整数返回(是一个抽象方法)
。
int read(byte b[]) :
读多个字节到数组中。
int read(byte b[], int off, int len)
:从输入流中读取长
度为
len
的数据,写入数组
b
中从索引
off
- 开始的位置,并返回读
取得字节数。
write(int b) :
将一个整数输出到流中(只输出低位字节,
抽象)
write(byte b[]) :
将字节数组中的数据输出到流中
write(byte b[], int off, int len) :
将数组
b
中从
off
指
定的位置开始,长度为
len
的数据输出到流中
flush()
:刷空输出流,并将缓冲区中的数据强制送出
close()
:关闭流
注:
进行
I/O
操作时可能会产生
I/O
例外,
属于非运行时例外,
应
该
在
程
序
中
处
理
。
如
:
型
FileNotFoundException,
EOFException, IOException
四、文件操作类的方法
File
类
File
类声明如下:
public
class
File
ectends
Object
implements
Serializable,Comparable
构造方法:
public File(String pathname)
public File(File patent,String child)
public File(String patent,String child)
文件名的处理
Java 输入/输出 反射的更多相关文章
- Java输入/输出教程
Java输入/输出(I/O)处理从源读取数据并将数据写入目标.通常,读取存储在文件中的数据或使用I/O将数据写入到文件中. java.io和java.nio包中包含处理输入/输出的Java类.java ...
- Java 输入/输出——处理流(RandomAccessFile)
RandomAccessFile是Java输入/输出流体系中功能最丰富的文件内容访问类,它提供了众多的方法来访问文件内容,它既可以读取文件内容,也可以向文件输出数据.与普通的输入/输出流不同的是,Ra ...
- Java 输入/输出——处理流(BufferedStream、PrintStream、转换流、推回输入流)
关于使用处理流的优势,归纳起来就是两点:(1)对于开发人员来说,使用处理流进行输入/输出操作更简单:(2)使用处理流执行效率更高. 1.BufferedInputStream/BufferedOutp ...
- Java 输入/输出——Java虚拟机读写其它进程的数据
使用 Runtime对象的exec()方法可以运行平台上的其它程序,该方法产生一个Process对象,Process对象代表由该Java程序启动的子进程.Process类提供了如下三个方法,用于让程序 ...
- Java 输入/输出——重定向标准输入/输出
在System类中提供了如下三个重定向标准输入/输出方法. static void setErr(PrintStream err) Reassigns the "standard" ...
- Java 输入/输出——字节流和字符流
1.流的分类 (1)输入流和输出流(划分输入/输出流时是从程序运行所在内存的角度来考虑的) 输入流:只能从中读取数据,而不能向其写入数据. 输出流:只能向其写入数据,而不能从中读取数据. 输入流主要由 ...
- Java 输入/输出——File类
File类是java.io包下代表与平台无关的文件和目录,也就是说,如果希望在程序中操作文件和目录,都可以通过File类来完成.值得指出的是,不管是文件还是目录都是使用File来操作的,File能新建 ...
- JAVA输入/输出系统中的其他流学习笔记
一.字节数组流 字节数组流类能够操作内存中的字节数组,它的数据是一个字节数组.字节数组流类本身适配器设计模式,它把字节数组类型转为流类型使得程序能够对字节数组进行读写操作. 1.ByteArrayIn ...
- Java 输入/输出——处理流(ObjectIO)
Object流:直接将Object流写入或读出. TestObjectIO.java transient关键字(英文名:透明的,可以用来修饰成员变量(实例变量),transient修饰的成员变量(实例 ...
随机推荐
- Sqlite数据库sqlite3命令小记
SQLite库包含一个名字叫做sqlite3的命令行,它可以让用户手工输入并执行面向SQLite数据库的SQL命令.本文档提供一个样使用sqlite3的简要说明. 开始 启动sqlite3程序,仅仅需 ...
- C++默认成员函数
1.什么是面向对象? 概念:(Object Oriented Programming,缩写:OOP)是一种程序设计范型,同时也是一种程序开发的方法. 对象指的是类的实例,将对象作为程序的基本单元,将程 ...
- Jmeter接口测试(八)cookie设置
HTTP Cookie 管理器 如果你有一个 HTTP 请求,其返回结果里包含一个 cookie,那么 使用 JmeterCookie 管理器会自动将该 cookie保存起来,而且以后所有对该网站的请 ...
- netbeans 类重复 解决
Help -> About -> Cache directory 记录Cache directory目录 删除该目录下的所有文件 重启
- 学习python,第三篇:.pyc是个什么鬼?
.pyc是个什么鬼? 1. Python是一门解释型语言? 我初学Python时,听到的关于Python的第一句话就是,Python是一门解释性语言,我就这样一直相信下去,直到发现了*.pyc文件的存 ...
- AI入门课程资源
企业 kaggle https://www.kaggle.com/learn/overview Google 介绍 https://developers.google.cn/machine-lea ...
- shell--read命令
read命令 -p(提示语句) -n(字符个数) -t(等待时间) -s(不回显) 1.基本读取read命令接收标准输入(键盘)的输入,或其他文件描述符的输入(后面在说).得到输入后,read命令将数 ...
- 欢迎来怼--第三十七次Scrum会议
一.小组信息 队名:欢迎来怼 小组成员 队长:田继平 成员:李圆圆,葛美义,王伟东,姜珊,邵朔,阚博文 小组照片 二.开会信息 时间:2017/12/3 17:50~18:23,总计33min. 地点 ...
- TFS任务预览
不太熟悉TFS任务项的建立. 初步建立及按老师要求分配到个人的任务设置与时间安排如下: (长时间任务可由多人合作完成,具体根据情况迅速调整任务分配) 加上每人需要进行阅读前一小组的代码需要时间2*8= ...
- Task2 四则运算2
1.任务要求:对之前的自动出题系统提出了新的要求:(1).题目避免重复:(2).可定制(数量/打印方式):(3)可以控制下列参数:是否有乘除法.数值范围.加减有无负数.除法有无余数.是否支持分数... ...