Java学习笔记——I/O流
朝辞白帝彩云间,千里江陵一日还。
两岸猿声啼不尽,轻舟已过万重山。
——早发白帝城
我们老师写代码有个特点,就是简洁。每一句的意图都十分明确。所以他讲课的速度也比较快。
跑题了,说说I/O流:
1、字节输入流
2、字符输入流
3、字节输出流
4、字符输出流
上代码:
public class FileInputStreamAndFileoutputSteamDemo {
public static void main(String[] args) throws IOException {
FileOutputStream fos = new FileOutputStream("/home/yanshaochen/public/abc.txt");
byte[] bytes = new byte[];
bytes = "金麟岂是池中物,一遇风云变化龙".getBytes();
fos.write(bytes);
fos.close();
FileInputStream fis = new FileInputStream("/home/yanshaochen/public/abc.txt");
String str = "";
int data;
while ((data = fis.read(bytes)) != -) {
str += new String(bytes, , data);
}
System.out.println(str);
fis.close();
}
}
public class WriterAndReader {
public static void main(String[] args) throws IOException {
String path = "/home/yanshaochen/public/abc.txt";
Writer wt = new FileWriter(path);
String str = "AAAAA";
wt.write(str);
wt.close();
Reader rd = new FileReader(path);
char[] chars = new char[];
int data;
str = "";
while ((data = rd.read(chars))!=-) {
str += new String(chars, , data);
}
System.out.println(str);
rd.close();
}
}
带缓冲区的字符输入输出流
public class BufferedReaderAndBufferedWriter {
public static void main(String[] args) throws IOException {
Writer fw = new FileWriter("/home/yanshaochen/public/abc.txt");
BufferedWriter bw = new BufferedWriter(fw);
String str = "AAAAAAAA";
bw.write(str);
bw.newLine();
bw.close();
Reader fr =new FileReader("/home/yanshaochen/public/abc.txt");
BufferedReader br = new BufferedReader(fr);
while ((str = br.readLine())!= null) {
System.out.println(str);
}
br.close();
}
}
字节流读写二进制
public class DataInputStreamDemo {
public static void main(String[] args) throws IOException {
//原始地址
InputStream is = new FileInputStream("/home/yanshaochen/图片/2017-05-06 15-12-02屏幕截图.png");
DataInputStream dis = new DataInputStream(is);
//目标地址
OutputStream os = new FileOutputStream("/home/yanshaochen/public/2017-05-06 15-12-02屏幕截图.png");
DataOutputStream dos = new DataOutputStream(os);
byte[] bytes = new byte[];
int data;
while((data = dis.read(bytes)) != -){
dos.write(bytes,,data);
}
System.out.println("copy ok!");
dos.close();
dis.close();
}
}
Java学习笔记——I/O流的更多相关文章
- java学习笔记16--I/O流和文件
本文地址:http://www.cnblogs.com/archimedes/p/java-study-note16.html,转载请注明源地址. IO(Input Output)流 IO流用来处理 ...
- 6.3(java学习笔记)缓冲流
一.缓冲流 使用缓冲流后的输入输出流会先存储到缓冲区,等缓冲区满后一次性将缓冲区中的数据写入或取出. 避免程序频繁的和文件直接操作,这样操作有利于提高读写效率. 缓冲流是构建在输入输出流之上的,可以理 ...
- 6.5(java学习笔记)其他流(字节数组流,数据流,对象流,打印流)
一.字节数组流 之前使用输入输出流的操作的对象是文件,而这里字节数组流操作的对象是内存,内存可以看做是一个字节数组. 使用字节数组流读写就可以看做是从内存A到内存B的读写,对象时内存即字节数组. 1. ...
- 6.4(java学习笔记)转换流
一.乱码问题 我们来看下列例子: public class ConStream { //当前平台默认采用GBK public static void main(String[] args){ Stri ...
- Java学习笔记——I/O流常用类之间的继承关系及构造方法
朝辞白帝彩云间,千里江陵一日还. 两岸猿声啼不住,轻舟已过万重山. ——早发白帝城 总结一下有哪些I/O流: 输入流方法主要是read()和close(),输出流方法主要是write().flush( ...
- java学习笔记之字符流文件复制
字符文件复制 FileReader fr =new FileReader("b.txt");//绑定源文件 FileWriter fw= new FileWriter(" ...
- Java学习笔记-10.io流
1.输入流,只能从中读取数据,而不能向其写出数据.输出流,只能想起写入字节数据,而不能从中读取. 2.InputStream的类型有: ByteArrayInputStream 包含一个内存缓冲区,字 ...
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
- 20145330第十周《Java学习笔记》
20145330第十周<Java学习笔记> 网络编程 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或者接收到指定的数据,这个就 ...
随机推荐
- 深入理解Spring中bean的生命周期
[Spring中bean的生命周期] bean的生命周期 1.以ApplocationContext上下文单例模式装配bean为例,深入探讨bean的生命周期: (1).生命周期图: (2).具体事例 ...
- Mac端SVN工具CornerStone详解
俗话说:"工欲善其事必先利其器": 对于我们程序员来说,不管你是大神,还是小鱼小虾,进入公司之后,都用过源码管理工具,不然你就不是一个合格的程序员,现在各个公司用于源码管理工具通常 ...
- underscore.js,js工具库
官方文档:http://underscorejs.org/ var totalCheckPriceVal = _.reduce(tableData[0],function(memo,num){ var ...
- 在centOS7.2里安装virtualenv和flask
1) 安装pip工具 #wget https://bootstrap.pypa.io/get-pip.py #python get-pip.py 2) 安装virtualenv,并创建一个开发环境 # ...
- 在hive中直接对timestamp类型取max报错
之前直接对timestamp类型做max操作, select id,max(updatetime) updatetime from his.tag group by id; 结果查询的结果有的显示为1 ...
- [转]SecureCRT右键粘贴的设置
1.习惯用putty的朋友,一般都习惯鼠标右键自动粘贴的功能,对于SecureCRT6.0.2 ,这个功能也已经是默认配置了. 老版本的SecureCRT其实也有这个功能,只是不是默认设置,很多人不知 ...
- js 模板引擎
template = document.querySelector('#template').innerHTML, result = document.querySelector('.result') ...
- Spring+SpringMVC+MyBatis+easyUI整合优化篇(九)数据层优化-jdbc连接池简述、druid简介
日常啰嗦 终于回到既定轨道上了,这一篇讲讲数据库连接池的相关知识,线程池以后有机会再结合项目单独写篇文章(自己给自己挖坑,不知道什么时候能填上),从这一篇文章开始到本阶段结束的文章都会围绕数据库和da ...
- 初学 Java Script (数据类型)
简介:JavaScript是一种属于网络的脚本语言,已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果.Javascript脚本语言同其他语言一样,有它自 ...
- 2017-4-26 winform tab和无边框窗体制作
TabIndex-----------------------------------确定此控件将占用的Tab键顺序索引 Tabstop-------------------------------指 ...