复习java基础第六天(IO)
一:File 类
package com.shellway.io;
import java.io.File;
import java.io.IOException;
import org.junit.Test;
public class IOtest {
@Test
public void test() throws IOException{
File file = new File("helloo.txt");
//获取文件的名称
String fileName = file.getName();
System.out.println(fileName);
//获取文件的绝对路径
String filePath = file.getAbsolutePath();
System.out.println(filePath);
//为文件重命名,不仅文件名变了且原来的文件路径跟着下面的路径变
// file.renameTo(new File("D:\\test\\day03\\helloo.txt"));
String path = file.getPath();
System.out.println(path);
//文件检测相关方法
System.out.println(file.exists());
File dir = new File("shellway");
System.out.println(dir.isDirectory());
System.out.println(dir.isFile());
//获取文件的常规信息
System.out.println(file.length());//单位为字节,一个汉字为两个字节,换行会加两个字节
//文件的相关操作
File file2 = new File("adc.txt");
file2.createNewFile();//创建一个空的文件
File file3 = new File("adc");
file3.mkdir();//创建一个空的目录
file2.delete();//删除一个文件
}
}
1、IO流的分类
package com.shellway.io;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.Reader;
import org.junit.Test;
public class IOtest {
/**
* 测试字符输入流
* @throws IOException
*/
@Test
public void testReader() throws IOException {
Reader reader = new FileReader("helloo.txt");
char []buffer = new char[10];
int len = 0;
while((len = reader.read(buffer)) != -1){
for(int i = 0;i < len;i++){
System.out.print(buffer[i]);
}
}
reader.close();
}
/**
* 测试字节输入流
* @throws IOException
*/
@Test
public void testInputStream() throws IOException {
//1、创建一个字符输入流
InputStream in = new FileInputStream("helloo.txt");
//2、读取文件内容
//2、1一次读取一个字符,效率很低,不建议这样读,-1表示读到文件的结尾
int result = in.read();
while(result!=-1){
System.out.print((char)result);
result = in.read();
}
//2、2一次读取一组字符,
byte []buffer = new byte[10];
int length = 0;
while((length = in.read(buffer))!=-1){
for(int i = 0;i<length;i++){ //注意不能加“=”号
System.out.print((char)buffer[i]);
}
//2、3把内容读取到字节数组的部分连续的元素中
byte []result1 = new byte[1024*10];
//10为字节数组的开始部分,第三个为实际长度。
in.read(result1, 10, in.available());
}
//3、关闭字符流
in.close();
}
}
测试字符、字节输入流
复习java基础第六天(IO)的更多相关文章
- java基础之IO流(二)之字符流
java基础之IO流(二)之字符流 字符流,顾名思义,它是以字符为数据处理单元的流对象,那么字符流和字节流之间的关系又是如何呢? 字符流可以理解为是字节流+字符编码集额一种封装与抽象,专门设计用来读写 ...
- java基础之IO流(一)字节流
java基础之IO流(一)之字节流 IO流体系太大,涉及到的各种流对象,我觉得很有必要总结一下. 那什么是IO流,IO代表Input.Output,而流就是原始数据源与目标媒介的数据传输的一种抽象.典 ...
- Java基础之IO流整理
Java基础之IO流 Java IO流使用装饰器设计模式,因此如果不能理清其中的关系的话很容易把各种流搞混,此文将简单的几个流进行梳理,后序遇见新的流会继续更新(本文下方还附有xmind文件链接) 抽 ...
- Java基础之IO技术(一)
---恢复内容开始--- Java基础中的IO技术可谓是非常重要,俗话说的好,万丈高楼起于垒土之间.所以学习Java一定要把基础学好,今天我们来学习IO技术的基础. IO无非就是输入与输出,而其中处理 ...
- java面试:java基础、Io、容器
1.java基础 1.JDK 和JRE有什么区别 JDK:java开发工具包,java开发运行环境.包含了JRE. JRE:java运行环境,包含java虚拟机,java基础类库. 2.jav ...
- Java基础之IO和NIO补完
Java Stream,File,IO 关于NIO和IO的比较,参考:Java NIO系列教程(十二) Java NIO与IO java包之java.io 参考材料:菜鸟教材 NIO 由于下面的系列教 ...
- 【Java基础】IO 流
IO 流 File 类 java.io.File 类是文件和文件目录路径的抽象表示形式,与平台无关. File 能新建.删除.重命名文件和目录,但 File 不能访问文件内容本身. 如果需要访问文件内 ...
- 【java基础】]IO流
IO流 概念: 流的概念源于unix中管道(pipe)的概念,在unix中,管道是一条不间断的字节流,用来实现程序或进程间的通信,或读写外围设备,外部文件等 一个流,一定能够会有源和去向(目的地),他 ...
- 黑马程序员——JAVA基础之IO流缓冲区,转换流,字节流
------- android培训.java培训.期待与您交流! ---------- 字符流的缓冲区 缓冲区的出现提高了对数据的读写效率. 对应类 • BufferedWriter ...
随机推荐
- isset在php5.6-和php7.0+的一些差异
今天在公司实现一个模块功能时写了如下代码: class ProductCategory { const TYPES = [ 1 => 'type1', 2 => 'type2', ]; p ...
- Mysql 模糊查询总结
语法: SELECT 字段集 FROM 表名 WHERE 字段名 LIKE 条件 模糊查询有四种匹配模式: 1.%:匹配任意0个或多个字符. 2._:匹配任意1个字符. 3.[]:匹配括号内所列字符中 ...
- Problem 28
Problem 28 https://projecteuler.net/problem=28 Starting with the number 1 and moving to the right in ...
- 用 console.time()和 console.timeEnd() 测试你的 javascript 代码执行效率
无意中学习到了一种测试 javascript 代码执行效率的一种方法,就记下来便于以后使用,用到了console对象中的 time 和 timeEnd 方法 . console.time('m ...
- (38)Spring Boot分布式Session状态保存Redis【从零开始学Spring Boot】
[本文章是否对你有用以及是否有好的建议,请留言] 在使用spring boot做负载均衡的时候,多个app之间的session要保持一致,这样负载到不同的app时候,在一个app登录之后,而访问到另外 ...
- [Cogs727] [网络流24题#2] 太空飞行计划 [网络流,最小割]
建图:源点—(w[i])—>实验—(∞)—>仪器—(cost[i])—>汇点, 如果该实验造成收益,则仪器到汇点的边在最小割中, 如果该实验造成损失,则源点到实验的边在最小割中, 故 ...
- poj3233 题解 矩阵乘法 矩阵快速幂
题意:求S = A + A2 + A3 + … + Ak.(mod m) 这道题很明显可以用矩阵乘法,但是这道题的矩阵是分块矩阵, 分块矩阵概念如下:当一个矩阵A中的单位元素aij不是一个数值而是一个 ...
- MySQL系列:innodb源码分析 图 ---zerok的专栏
http://blog.csdn.net/yuanrxdu/article/details/40985363
- CentOS下安装使用phpMyAdmin. Set up phpMyAdmin on CentOS
须要组件: Apache PHP Mysql phpMyAdmin Apache 0. yum install httpd 1. 确认版本号 $ httpd -v 2. 启动apache $ sudo ...
- 【HDOJ 5419】 Victor and Toys (排列组合)
[HDOJ 5419] Victor and Toys n个玩具 m个区间 每一个玩具有一个beauty值 问任选三个区间 三区间的MINleft~MAXright的和的期望值 预处理一个数组 存放每 ...