Java IO Demo
//FileReader FileWriter 读写英文
public void FileReaderAndWriter1() throws Exception {
File filePath = new File("E:/iotest");
if (!filePath.exists()) {
filePath.mkdirs();
}
//写文件
File file = new File(filePath.getPath(), "writer.txt");
FileWriter writer = new FileWriter(file);
for (int i = 0; i < 100; i++) {
writer.write(new char[]{'a','b','c'});
writer.write(new char[]{'\r','\n'});
}
writer.close();
//读取文件
FileReader reader = new FileReader(file);
char[] chars=new char[100];
int readCount =0;
while((readCount=reader.read(chars))>0){
System.out.print(String.valueOf(chars).substring(0, readCount));
}
reader.close();
}
//FileReader FileWriter 读写中文
public void FileReaderAndWriter2() throws Exception {
File filePath = new File("E:/iotest");
if (!filePath.exists()) {
filePath.mkdirs();
}
//写文件
File file = new File(filePath.getPath(), "writer.txt");
FileWriter writer = new FileWriter(file);
BufferedWriter bfWriter = new BufferedWriter(writer);
for (int i = 0; i < 10000; i++) {
bfWriter.write("当前行号" + i);
bfWriter.write("\r\n");
}
bfWriter.flush();
writer.close();
bfWriter.close();
//读取文件
FileReader reader = new FileReader(file);
BufferedReader bfReader =new BufferedReader(reader);
String line="";
while((line=bfReader.readLine())!=null){
System.out.println(line);
}
}
//FileInputStream FileOutputStream
public void FileStream() throws Exception{
File file1 =new File("E:/iotest","writer.txt");
FileInputStream input =new FileInputStream(file1);
BufferedInputStream bInput =new BufferedInputStream(input);
File file2 =new File("E:/iotest","writer1.txt");
FileOutputStream output = new FileOutputStream(file2);
BufferedOutputStream bOutput =new BufferedOutputStream(output);
byte [] b=new byte[1024];
int bCount;
while((bCount=bInput.read(b))>0){
bOutput.write(b, 0, bCount);
}
bOutput.flush();
bOutput.close();
bInput.close();
}
//BitArrayInputStream BitArrayOutputStream
public void BitStream()throws Exception{
byte [] binput =new byte[]{12,-1,127,-128,0};
ByteArrayInputStream input = new ByteArrayInputStream(binput);
int i;
while((i = input.read())!=-1){
System.out.println(i);
}
ByteArrayOutputStream output = new ByteArrayOutputStream();
output.write(new byte[]{67,97,1});
String strOut = output.toString();
System.out.println(strOut);
}
//CharArrayReader CharArrayWriter
public void CharStream()throws Exception{
CharArrayReader reader =new CharArrayReader(new char[]{'a','b','c'});
int i;
while((i=reader.read())!=-1){
System.out.println(i);
}
CharArrayWriter writer = new CharArrayWriter();
writer.write("上海");
char [] cbuf =new char[]{'a','b','c','A'};
writer.write(cbuf);
File file = new File("E:/iotest/char.txt");
FileWriter fw = new FileWriter(file);
writer.writeTo(fw);
writer.flush();
fw.flush();
}
//ObjectStream
public void ObjectStream() throws Exception{
FileOutputStream fos = new FileOutputStream("E:/iotest/object.txt");
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeDouble(10.2);
oos.writeFloat(16.323f);
oos.writeChars("中国");
Student stu =new Student(1,"cwg",new Date());
oos.writeObject(stu);
oos.flush();
oos.close();
FileInputStream fis =new FileInputStream("E:/iotest/object.txt");
ObjectInputStream ois = new ObjectInputStream(fis);
System.out.println( ois.readDouble());
System.out.println( ois.readFloat());
System.out.println( ois.readChar());
System.out.println( ois.readChar());
Object obj = ois.readObject();
if(obj instanceof Student){
Student rstu =(Student)obj;
System.out.println(rstu.getId()+"--"+rstu.getUserName());
}
}
public static void main(String[] args) throws Exception {
IODemo demo = new IODemo();
//demo.FileReaderAndWriter1();
//demo.FileReaderAndWriter2();
//demo.FileStream();
//demo.BitStream();
//demo.CharStream();
//demo.ObjectStream();
}
Java IO Demo的更多相关文章
- java IO流详解
流的概念和作用 学习Java IO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...
- java IO之AutoCloseable,Closeable和Flushable接口
有3个接口对于流类相当重要.其中两个接口是Closeable和Flushable,它们是在java.io包中定义的,并且是由JDK5添加的.第3个接口是AutoColseable,它是由JDK7添加的 ...
- java.io.StreamCorruptedException: invalid type code: AC错误的解决方法
问题描述: 在向一个文件写入可序列化对象时,每次只想向文件的末尾添加一个可序列化的对象,于是使用了FileOutputStream(文件名,true)间接的构建了ObjectOutputStream流 ...
- java io (一)
对于文件内容的操作主要分为两大类 分别是:字符流 字节流 其中,字符流有两个抽象类:Writer Reader 其对应子类FileWriter和FileReader可实现文件的读写操作 Buffe ...
- appium+java+junit demo运行
对java熟悉一些,所以想用java把appium给做起来.今天用myeclipse给环境和Demo弄了一下,网上没有一篇全套资料的. 各块环境的搭建: 1.安装appium客户端,省略下载和安装步骤 ...
- Java Io(数据输入输出流)
Java Io 字节流中的DataInputStream 和 DataOutputStream,使用流更加方便,是流的一个扩展,更方便读取int, long,字符等类型数据. 事例代码如下: pack ...
- Java Io 流(输入输出流)
IO流,也就是输入和输出流,可分为字节流和字符流. 1. 字节流 (1). InputStream 输入流,用于读取文件 输入流常用API: inputStream.read() 读取一个字节 in ...
- 黑马程序员——【Java基础】——Java IO流
---------- android培训.java培训.期待与您交流! ---------- 一.IO概述 1.IO:是Input.Output的缩写. 2.特点: (1)用于处理设备间的数据传输. ...
- java io系列01之 "目录"
java io 系列目录如下: 01. java io系列01之 "目录" 02. java io系列02之 ByteArrayInputStream的简介,源码分析和示例(包括 ...
随机推荐
- LUOGU P4609 [FJOI2016]建筑师(第一类斯特林数)
传送门 解题思路 好神仙的思路,首先一种排列中按照最高点将左右分开,那么就是要在左边选出\(a-1\)个,右边选出\(b-1\)一个,这个如何计算呢?考虑第一类斯特林数,第一类斯特林数是将\(n\)个 ...
- mysql实现“存在即更新,不存在即插入”
方法1:使用replace关键字 replace是insert的增强版,可以实现插入的数据和已存在的数据发生主键或者唯一键重复,则删除已存在的数据,再实现插入,如果不重复,则直接插入数据. 结合Myb ...
- (选做)实现mypwd
选做 实现mypwd 实验内容: 1.学习pwd命令. 2.研究pwd实现需要的系统调用(man -k; grep),写出伪代码. 3.实现mypwd. 4.测试mypwd. 实验步骤: 学习pwd命 ...
- 2018-2019-2 网络对抗技术 20165206 Exp7 网络欺诈防范
- 2018-2019-2 网络对抗技术 20165206 Exp7 网络欺诈防范 - 实验任务 (1)简单应用SET工具建立冒名网站 (1分) (2)ettercap DNS spoof (1分) ...
- Unity Shader之模板测试
Unity Shader之模板测试 一沙一世界,一花一天堂 一.Stencil testing 渲染管线 当片段着色器处理完一个片段之后,模板测试(Stencil Test)会开始执行,和深度 ...
- vs2005安装 和 Fatal Error C1902
win10系统不能激活 win7可以激活,运行会出现兼容错误,解决办法装2个sp1补丁 拷贝mspdb80.dll到系统目录后会出现 Fatal Error C1902, 解决方法如下: VC++20 ...
- 用 Flask 来写个轻博客 (18) — 使用工厂模式来生成应用对象
Blog 项目源码:https://github.com/JmilkFan/JmilkFan-s-Blog 目录 目录 前文列表 工厂模式 使用工厂方法 Factory Method 创建 app 对 ...
- Linux下安装xwindow图形界面
执行命令 yum -y groupinstall Desktop yum -y groupinstall "X Window System" 然后执行"startx&qu ...
- 第十三周学习总结&实验报告(八)
图像界面 件处理及监听处理 1.键盘事件(KeyEvent)及监听处理(KeyListener) 1.1加入事件监听 super.addWindowListener(new WindowAdapter ...
- 如何使用Charles对手机进行抓包
步骤:(如下为ios步骤,安卓类似) 1)Mac安装Charles,保证手机与电脑在同一wifi(若没有WiFi时,Mac.MacBook,etc 自带热点功能) 2)在手机当前连接的wifi设置里配 ...