复习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 ...
随机推荐
- python爬虫11 | 这次,将带你爬取b站上的NBA形象大使蔡徐坤和他的球友们
在上一篇中 python爬虫10 | 网站维护人员:真的求求你们了,不要再来爬取了!! 小帅b给大家透露了我们这篇要说的牛逼利器 selenium + phantomjs 如果你看了 python爬虫 ...
- navicate远程访问ubuntu上的mysql数据库
安装mysql 首先检查系统中是否已经安装了MySQL,在终端里面输入: sudo netstat -tap | grep mysql 如上所示就是正确安装并启动,启动命令为 sudo /etc/in ...
- HTML5本地存储——Web SQL Database与indexedDB
虽然在HTML5 WebStorage介绍了html5本地存储的Local Storage和Session Storage,这两个是以键值对存储的解决方案,存储少量数据结构很有用,但是对于大量结构化数 ...
- ganglia问题小结
1.gmetad和rrdtool的关系 gmetad负责将轮询gmond拉取到的数据存入rrdtool的文件中,rrdtool 2.gemtad.conf ①命令:/usr/sbin/gmetad - ...
- python在Linux中安装虚拟环境,区别python2和python3,分别安装模块
安装虚拟环境的时候遇到的问题,解决的过程很闹心,在这里简单直接的分享出来,就是为了解决问题. 安装虚拟环境(须在联网状态下) $ sudo pip install virtualenv $ sudo ...
- Adobe photoshop CC 2018安装激活教程
2017年10月,Adobe公司发布最新版Adobe CC 2018系列软件,photoshop cc 2018更是迎来惊艳的新功能.下面来分享安装和激活教程. 不会安装请加QQ:1833920353 ...
- 一起talk C栗子吧(第七十七回:C语言实例--DIY ls命令续)
各位看官们,大家好.上一回中咱们说的是DIY cat命令的样例.这一回咱们说的样例是:DIY ls命令续. 闲话休提,言归正转.让我们一起talk C栗子吧! 我们在前面的章回中DIY过ls命令.时间 ...
- Eclipse ADT 导入别的电脑开发的项目
用Eclipse开发的时候常常要导入别的电脑开发的项目,常常会出错,甚至导入不了. 方法一: 把你正在使用的Eclipse开发的随便一个项目.打开,把下图这三个文件复制过去你要导入的项目.覆盖.然后再 ...
- linux下华为HSPA模块MU609的驱动问题
环境: CPU: s3c2416 Linux: 3.6 模块: HUAWEI MU609 SIM卡: 移动3G卡.移动4G卡 首先,拿到MU609模块后,第一要做的是对模块进行一些熟悉与了解,那么资料 ...
- 翻翻git之---溜的飞起的载入效果AVLoadingIndicatorView
转载请注明出处:王亟亟的大牛之路 由于接近过春节.看各个群体的工作都不太旺盛(不是年会就是各种吹B或是放空). 之前的Material Design的内容差点儿讲的差点儿相同了(至少基本的几个控件都介 ...