Java学习笔记之 IO包 字节流

IO包最重要的五个类和一个接口

File/OutputStream/InputStream(字节流)/Writer/Reader(字符流)

一个接口:Serializable

 

File类:



字节流:

OutputStreamInputStream是抽象类

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);

}

 

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/293342.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

周期串问题(二)

题目&#xff1a; 题目一[周期串问题] 如果一个字符串可以由某个长度为k的字符串重复多次得到&#xff0c;我们说该串以k为周期。例如&#xff0c;abcabcabcabc以3为周期&#xff08;注意&#xff0c;它也可以6和12为周期,结果取最小周期3&#xff09; 代码如下&#xff1a; …

bootstrap bootstraptable 固定列_1个Excel公式按条件自定义格式显示固定电话号码

点击右上角“关注”&#xff0c;每天免费获取干货教程前面写了很多篇关于数据查询、数据统计、数据分析、公式排错的教程&#xff0c;今天换一个口味&#xff0c;写个关于自定义格式显示数据的教程。因为工作中很多时候都需要按照指定的要求将数据源整理成固定的格式&#xff0…

记一次引入Elasticsearch的系统架构实战

前言我曾经面试安踏的技术岗&#xff0c;当时面试官问了我一个问题&#xff1a;如果你想使用某个新技术但是领导不愿意&#xff0c;你怎么办&#xff1f;对于该问题我相信大家就算没有面试被问到过&#xff0c;现实工作中同事之间的合作也会遇到。 因此从我的角度重新去回答这…

rsync 安装使用详解

RSYNC软件介绍&#xff1a; rsync是类unix系统下的数据镜像备份工具&#xff0c;从软件的命名上就可以看出来了——remote sync。它的特性如下&#xff1a;可以镜像保存整个目录树和文件系统。可以很容易做到保持原来文件的权限、时间、软硬链接等等。无须特殊权限即可安装。优…

【 Tomcat 】tomcat8.0 调优配置

2019独角兽企业重金招聘Python工程师标准>>> 1、优化内核及TCP连接&#xff1a; fs.file-max 655350  # 系统文件描述符总量 net.ipv4.ip_local_port_range 1024 65535  # 打开端口范围 net.ipv4.tcp_max_tw_buckets 2000  # 设置tcp连接时TIME_WAIT个数 n…

[转]ORACLE 异常错误处理

本文转自&#xff1a;http://www.cnblogs.com/soundcode/archive/2012/01/10/2318385.html 本篇主要内容如下&#xff1a; 5.1 异常处理概念 5.1.1 预定义的异常处理 5.1.2 非预定义的异常处理 5.1.3 用户自定义的异常处理 5.1.4 用户定义的异常处理 5.2 异常错误传播 5.2.1 在…

java.io.StreamCorruptedException: invalid type code: AC解决办法

.java.io.StreamCorruptedException: invalid type code: AC解决办法问题描述&#xff1a; 在向一个文件写入可序列化对象时&#xff0c;每次只想向文件的末尾添加一个可序列化的对象&#xff0c;于是使用了FileOutputStream&#xff08;文件名&#xff0c;true&#xff09;间接…

abb机器人指令手册_第1519课 ABB机器人初级教程

每一位读者都是我分享的动力&#xff0c;感谢大家关注&#xff01;第15课 系统输入输出与IO信号的关联第16课 示教器可编程按钮的使用第17课 什么是程序数据第18课 程序数据的类型与分类第19课 创建程序数据第15课第16课第17课第18课第19课每一位读者都是我分享的动力&#xff…

Java学习笔记之 IO包 字符流

字符流&#xff1a;Writer/Reader(字符流) 通过子类FileWriter和FileReader实现父类实例化 package iotest; import java.io.File; import java.io.Writer; import java.io.Reader; import java.io.FileWriter; import java.io.FileReader; public class OutputStreamDemo2 { p…

ci框架(二)

自定义SQL语句 当提供的API满足不了我们对SQL语句的要求的时候&#xff0c;我们通常是自己来写SQL语句&#xff0c;CI也提供了比较强大了&#xff0c;能够满足我们需求的一般的sql的API。 $res$…

到底该不该使用存储过程

百度百科对存储过程的定义存储过程&#xff08;Stored Procedure&#xff09;是在大型数据库系统中&#xff0c;一组为了完成特定功能的SQL 语句集&#xff0c;它存储在数据库中&#xff0c;一次编译后永久有效&#xff0c;用户通过指定存储过程的名字并给出参数&#xff08;如…

leetcode 104. Maximum Depth of Binary Tree

Given a binary tree, find its maximum depth. The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node. 求二叉树的最大深度 /*** Definition for a binary tree node.* public class TreeNode {* int val…

ubuntu上面svn用merge合并到之前的版本

第一步&#xff1a;切换到svn项目的目录 第二步&#xff1a;更新到最新用 svn update 第三步&#xff1a;查看我们当前svn的版本号 svn infoRevision:2234 第四步&#xff1a;查看我们每次记录的日志信息得到版本号 svn log Revision:2231 第五步&#xff1a;合并到之前的版本…

智能卡门禁管理系统_汉中停车场智能门禁系统简介,保安服务收费,行业知识

首页 > 新闻列表 > 正文作者&#xff1a;佚名 点击数&#xff1a; 5更新时间&#xff1a;2020-11-04 08:21:21 导读&#xff1a;名将安防为您提供汉中停车场智能门禁系统简介,保安服务收费的相关知识与详情&#xff1a; 接警时&#xff0c;系统自动调出预警方案&#xf…

Quartus DSE 初步应用

介绍 Design Space Explorer (DSE) is a program that automates the process of finding the optimal collection of Quartus II software settings for a design.心得 &#xff1a; 好的timing是设计出来的。不建议工程一出现timing 就DSE搜索。只有timing只差一点点了才用 &…

推荐系统中协同过滤算法实现分析

原创博客&#xff0c;欢迎转载&#xff0c;转载请注明&#xff1a;http://my.oschina.net/BreathL/blog/62519 最近研究Mahout比较多&#xff0c;特别是里面协同过滤算法&#xff1b;于是把协同过滤算法的这个实现思路与数据流程&#xff0c;总结了一下&#xff0c;以便以后对系…

基于SQL的日志分析工具myselect

基本介绍 程序开发者常常要分析程序日志&#xff0c;包括自己打印的日志及使用的其他软件打印的日志&#xff0c;如php,nginx日志等&#xff0c;linux环境下分析日志有一些内置命令能够使用&#xff0c;如grep,sort,uniq,awk等&#xff0c;当中最强大的是awk&#xff0c;是作为…

老黄的2021

0x01 21年怎么说呢&#xff0c;平淡中带点惊喜。21年在现在的公司待满 2 年了&#xff0c;仔细想想&#xff0c;还真是&#xff0c;这是第一个待满 2 年的公司。这一年&#xff0c;有了很多的挑战&#xff0c;业务上的&#xff0c;技术上的&#xff0c;管理上的都是。下半年开始…