黑马程序员_Java基础2
来源:互联网 发布:开源cms系统免费 编辑:程序博客网 时间:2024/06/04 18:01
------- android培训、java培训、期待与您交流! ----------
IO流 - 字符流 - FileWriter类
此类位于java.io包下,用于文件流的便捷输出。
构造函数:
FileWriter(File file | boolean append) 按指定文件对象构造一个文件写入流对象,可选是追加写入
FileWriter(String filename | boolean append)按指定文件名构造一个文件写入流对象,可选是追加写入
常用方法
write(String str) 将字符串写入文件输出流
flush() 将缓存写入文件
IO流 - 字符流 - FileReader类
此类位于java.io包下,用于文件流的便捷输入。
IO流 - 字符流 - 字符缓冲流
构造函数:
FileReader(File file) 根据File对象,构建一个文件输入流对象
FileReader(String filename) 根据文件名,构建一个文件输入流对象
常用方法:
read() 读取单个字符(继承InputStream的方法)
read(char[] cbuf,int offset, int length) 将字符读入指定字符数组的某处,开始到结尾( InputStream的方法)
read(char[]) 将字符读入缓冲数组(Reader的方法)
read(char[], cbuf,int offset, int length) 将字符读入指定缓冲数组的指定开始到结尾(Reader的方法)
提高读取数据效率的方法:使用字符数组作为读取流缓冲区
char[] buf = new char[1024];
int len = 0;
while((len=fr.read(buf)) != -1) {
System.out.println(new String(buf,0,len)); //以char数组中0到1en的字符生成一个新的字符串
System.out.println(new String(buf,0,len)); //以char数组中0到1en的字符生成一个新的字符串
}
IO流 - 异常及处理
常见异常:IOException、FileNotFoundException
在对异常进行捕获之后,要进行finally处理
在finally中,关闭各种流和清理缓存资源之前,要先判断各种流是否为空:
finally
{
try
{
if(fr != null) fr.close();
}
catch (IOException e)
{
throw new RuntimeException("输入流关闭失败!");
}
}
IO流 - 字符流 - 字符缓冲流
BufferedReader 缓冲输入流
常用方法:
read(Reader in)
readLine() 读入一行字符,并封装成一个字符串返回,此方法读到末尾没有数据时,会返回null
因此在循环读取时可以这样判断:
String line = null;
while((line=br.readLine()) != null) {
System.out.println(line);
System.out.println(line);
}
其底层是由FileReader实现,运用了缓冲技术。
缓冲技术,其实就是内部构建了一个缓冲区,将单个字符缓冲到一定容量后,再构造字符串返回。
扩展:掌握了FileReader类以及字符缓冲技术,完全可以自己创建一个BufferedReader。
BufferedWriter 缓冲输出流
常用方法:
write(String str)
newLine() 跨平台的换行方法
flush() 缓冲数据刷新到写入流
其底层也是使用了缓冲技术,将要写入的字符先缓冲到字符数组中,到一定容量后,再一次性写入文件。
------- android培训、java培训、期待与您交流! ----------
详情请查看:
- 黑马程序员_Java基础2
- 黑马程序员_java基础2
- 黑马程序员_java基础2
- 黑马程序员_Java基础2
- 黑马程序员_Java基础(2)
- 黑马程序员_java基础
- 黑马程序员_java基础
- 黑马程序员_java 基础
- 黑马程序员_java基础
- 黑马程序员_Java基础
- 黑马程序员_java基础
- 黑马程序员_java基础
- 黑马程序员_java基础
- 黑马程序员_Java基础
- 黑马程序员_java基础
- 黑马程序员_java基础
- 黑马程序员_java基础
- 黑马程序员_Java基础
- hdu2032—— 杨辉三角
- 使用万能表单解析程序将表单数据封装成List<Map>
- 2012java决赛编程大题
- 第3章 建立需求模型
- JBPM4.4-依赖包介绍
- 黑马程序员_Java基础2
- 在对象创建的时候就自动初始化成员变量-构造函数
- 用c语言判断一个数是否是回文数
- repo sync fatal: 出错的补丁
- OpenCV学习笔记(29)KAZE 算法原理与源码分析(三)特征检测与描述
- 斐波那契数列
- Uva 10130 - SuperSale
- Struts+Jasperreport配置
- PHP+MYSQL新闻系统开发之admin_news_add.php和admin_news_list.php