Java学习笔记之 IO包 字节流
IO包最重要的五个类和一个接口
File/OutputStream/InputStream(字节流)/Writer/Reader(字符流)
一个接口:Serializable
File类:
字节流:
OutputStream与InputStream是抽象类
OutputStream是整个IO包中,字节输出流的最大类
FileOutputStream是一个子类,通常用整个子类通过多态实例化OutputStream
packageiotest;
importjava.io.File;
importjava.io.FileNotFoundException;
importjava.io.IOException;
importjava.io.OutputStream;
importjava.io.FileOutputStream;
importjava.io.InputStream;
importjava.io.FileInputStream;
publicclass OutputStreamDemo1 {
public static void main(String args[]) throws Exception{
File f =newFile("D:"+File.separator+"javasrc"+File.separator+"write_file.txt");
OutputStream o=null;
o=new FileOutputStream(f);
String s="Hello World!";
byte b[]=s.getBytes();
o.write(b);
o.close();
//修改文件 追加文件内容
OutputStream o1=null;
o1=new FileOutputStream(f,true);
o1.write("\r\n".getBytes()); //增加换行符
o1.write(b);
o1.close();
//读取并打印文件
//01 定义一个字节数组 长度为1024
InputStream in1=null;
in1=new FileInputStream(f);
byte b1[]=new byte[1024];
int len=in1.read(b1);
in1.close();
print(b1,len);
//02 定义一个字节数组 长度为文件长度
InputStream in2=null;
in2=new FileInputStream(f);
byte b2[]=new byte[(int)f.length()];
in2.read(b2);
in2.close();
print(b2);
//03 已经文件长度 逐个字节读取
InputStream in3=null;
in3=new FileInputStream(f);
byte b3[]=new byte[(int)f.length()];
for (int i=0;i<b3.length;i++){
b3[i]=(byte) in3.read();
}
in3.close();
print("the third read method:");
print(b3);
//04 未知文件长度读取
InputStream in4=null;
in4=new FileInputStream(f);
byte b4[]=new byte[1024];
int i=0;
int temp=0;
while ((temp=in4.read())!=-1){
b4[i]=(byte)temp;
i++;
}
in4.close();
print("the fourth read method:");
print(b4);
}
public static void print(byte b[],int len){
System.out.println(new String(b,0,len));
}
public static void print(byte b[]){
System.out.println(new String(b));
}
public static void print(String b){
System.out.println(b);
}
}
Java学习笔记之 IO包 字节流相关推荐
- Java学习笔记之 IO包 字符流
字符流:Writer/Reader(字符流) 通过子类FileWriter和FileReader实现父类实例化 package iotest; import java.io.File; import ...
- java学习笔记(十三)----IO操作
一.文件的创建 ------------------------------------------------------- File类,表示磁盘上的文件或目录,可对文件或目录进行操作. * 常 ...
- java学习笔记-初学IO流
目 录 什么是IO IO流的分类 Java中的IO流 java中需要掌握的流:16个 字节流 java.io.FileInputStream(字节输入流) java.io.FileOutputStre ...
- 2022年Java学习笔记目录
一.2022年Java任务驱动课程 任务驱动,统摄知识点:2022年Java程序设计讲课笔记 二.2022年Java学习笔记 (一)踏上Java开发之旅 Java学习笔记1.1.1 搭建Java开发环 ...
- Java学习笔记(7)——Java基础之IO多线程网络思维导图
Java面向对象学习笔记之:包括IO(字节流,字符流,节点流,处理流).线程(线程创建,线程控制,线程同步).网络(TCP Scoket, UDP Scoket)(全屏观看Java学习笔记(7)-- ...
- java学习笔记16--I/O流和文件
本文地址:http://www.cnblogs.com/archimedes/p/java-study-note16.html,转载请注明源地址. IO(Input Output)流 IO流用来处理 ...
- java学习笔记:全部,txt版本
java学习笔记:全部,txt版本 笔者注: 1.不知道怎么上传附件,所以就把txt文本内容全部贴在这里吧. 2.已经把txt版本的笔记上传到CSDN了,我没有设置索要积分才能下载,但是不知道为什么C ...
- Java学习笔记(原创)
Java学习笔记(原创) 2011-12-01 16:37:00| 分类: Java|举报|字号 订阅 下载LOFTER客户端 基本知识 一. Java基础 1. java语言的特点: ①简单:没有 ...
- Java学习笔记(十)--控制台输入输出
输入输出 一.控制台输入 在程序运行中要获取用户的输入数据来控制程序,我们要使用到 java.util 包中的 Scanner 类.当然 Java 中还可以使用其他的输入方式,但这里主要讲解 Scan ...
最新文章
- mac如何导入python第三方库_mac下python安装第三方库
- [linux内核]將ubuntu更新到最新的内核
- python3安装步骤mac-Mac安装Python3
- Centos之压缩和解压缩命令
- 【mysql技巧】按某一字段分组取最大(小)值所在行的数据
- Python 基础篇-正斜杠(/)和反斜杠(\)的用法
- 复杂知识库问答最新综述:方法、挑战与解决方案
- [kubernetes] Schedule --- Node调度与隔离
- web上传大文件的配置
- mongo 删除节点_将生产节点/ Express Mongo App部署到AWS —反思
- 更新性能服务器图片介绍,图文并茂 讲述企业版Linux性能发展史
- 关于快逸报表超链接的使用方式。
- MacOS删除开机启动项
- ADS1256的使用
- 全面了解风控策略体系
- html把背景设为白色,ps中图片背景怎么改成白色?
- 计算机组成原理及汇编语言程序设计 179页4-24题 假设(AX)=0FF60H,有以下程序段:
- 多节点Linux环境打造
- Go基础:常见的json包--encoding/json、easyjson、ffjson、json-iterator/go
- 为什么我的同花顺选股服务器列表为空,同花顺选股公式,为什么我就选不出股票来呢数......
热门文章
- SQL Server 中 JSON_MODIFY 的使用
- .NET LINQ分析AWS ELB日志避免996
- asp.net core 系列之Performance的 Response compression(响应压缩)
- ASP.NET Core Web 项目文件介绍
- 自定义Visual Studio.net Extensions 开发符合ABP vnext框架代码生成插件[附源码]
- 手写AspNetCore 认证授权代码
- ASP.NET Core 网站运行时修改设置如何自动生效
- 【深圳】掌通宝科技有限公司技术总监(兼架构师),约吗
- 构建高性能.NET应用之配高可用IIS服务器-第五篇 IIS常见问题之:工作进程回收机制(中)
- 【广州/深圳 活动】 MVP社区巡讲