IO流--FileReader&&FileWriter
(一)FileReader
(1)第一种读取方式
package com.songyan.fileReader; import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException; /**
* FileReader第一种读取方式
* @author Administrator
*
*/
public class Demo1 {
public static void main(String[] args) throws IOException {
FileReader fileReader=new FileReader("demo.txt");
int ch=0;
while((ch=fileReader.read())!=-1)
{
System.out.print((char)ch);
}
fileReader.close();
} }
(2)第二种读取方式
package com.songyan.fileReader; import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException; public class Demo2 {
public static void main(String[] args) throws IOException {
FileReader reader=new FileReader("demo.txt");
char[] arr=new char[8192];
int len=0;
while((len=reader.read(arr))!=-1)
{
System.out.print(new String(arr));
}
reader.close();
}
}
(二)FileWriter
package com.songyan.filewriter; import java.io.FileWriter;
import java.io.IOException;
/**
* 第一个demo
* @author Administrator
*
*/
public class Demo1 {
public static void main(String[] args) {
try {
FileWriter fileWriter=new FileWriter("/src/com/songyan/fileReader/Demo2.java");
fileWriter.write("hahha");
fileWriter.flush();
fileWriter.close();
} catch (IOException e) {
e.printStackTrace();
} } }
异常处理
package com.songyan.filewriter; import java.io.FileWriter;
import java.io.IOException;
/**
* 标准IO处理异常的方式
* @author Administrator
*
*/
public class Demo2 {
public static void main(String[] args) {
FileWriter fileWriter=null;
try {
fileWriter = new FileWriter("demo1.txt");
fileWriter.write("hahahh");
fileWriter.flush();
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
if(fileWriter!=null)
fileWriter.close();
} catch (IOException e) {
e.printStackTrace();
}
} }
}
换行符&&续写
package com.songyan.filewriter; import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
/**
*
* @author Administrator
* 回车符:\r\n
* 续写:
*/
public class Demo3 {
public static void main(String[] args) {
FileWriter writer=null;
try {
writer = new FileWriter("demo1.txt");
writer.write("dddd\r\n");
writer.write("dddd\r\n");
writer.write("dddd\r\n");
writer.flush();
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
if(writer!=null)
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
} }
}
(三)代码练习
打印一个java文件控制台
package com.songyan.test; import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException; /**
* 打印一个java文件到控制台
* @author Administrator
*
*/
public class Test1 {
public static void main(String[] args) throws IOException {
FileReader reader=new FileReader("src/com/songyan/fileReader/Demo2.java");
char[] arr=new char[8192];
int len=0;
while((len=reader.read(arr))!=-1)
{
System.out.print(new String(arr));
}
reader.close(); }
}
将c盘一个文件拷贝到D盘
package com.songyan.test; import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException; /**
* 将c盘一个文件拷贝到D盘
* @author Administrator
*
*/
public class Test2 {
/**
* 读一个写一个
* @throws IOException
*/
public static void copy1() throws IOException
{
FileReader reader=new FileReader("C:\\Users\\langchao1\\AppData\\Local\\IconCache.db");
FileWriter writer=new FileWriter("D:\\IconCache1.db");
int sig=0;
while((sig=reader.read())!=-1)
{
writer.write((char)sig);
}
reader.close();
writer.close();
} /**
* 先读后写
* @throws IOException
*/
public static void copy_my() throws IOException
{
//读取C盘文件
FileReader reader=new FileReader("C:\\Users\\langchao1\\AppData\\Local\\IconCache.db");
char[] arr=new char[8192];
int len=0;
String str="";
while((len=reader.read(arr))!=-1)
{
str=str+new String(arr);
}
//写入D盘
FileWriter writer=new FileWriter("D:\\IconCache.db");
writer.write(str);
writer.flush();
writer.close();
} /**
* 一次读取arr【】
*/
public static void copy2()
{
FileReader reader=null;
FileWriter writer=null; try{
reader=new FileReader("C:\\Users\\langchao1\\AppData\\Local\\IconCache.db");
writer=new FileWriter("D:\\I.db");
char[] arr=new char[8192];
int len=0;
while((len=reader.read(arr))!=-1)
{
writer.write(arr);
} }catch(IOException e)
{
e.printStackTrace();
}finally{
try {
if(reader!=null)
reader.close();
if(writer!=null)
writer.close();
} catch (Exception e2) {
}
}
} /**
* 最优形式:只读取有效部分
*/
public static void copy_final()
{
FileReader reader=null;
FileWriter writer=null; try{
reader=new FileReader("C:\\Users\\langchao1\\AppData\\Local\\IconCache.db");
writer=new FileWriter("D:\\I.db");
char[] arr=new char[8192];
int len=0;
while((len=reader.read(arr))!=-1)
{
writer.write(arr,0,len);
} }catch(IOException e)
{
e.printStackTrace();
}finally{
try {
if(reader!=null)
reader.close();
if(writer!=null)
writer.close();
} catch (Exception e2) {
}
}
}
public static void main(String[] args) throws Exception { copy2(); }
}
IO流--FileReader&&FileWriter的更多相关文章
- 黑马程序员——JAVA基础之IO流FileReader,FileWriter
------- android培训.java培训.期待与您交流! ---------- IO(Input Output)流 IO流用来处理设备之间的数据传输 Java对数据的操作是通过流的方式 J ...
- Java I/O---字符与字节转换流---FileReader&FileWriter:
public class SubTransStreamDemo { /** * @param args * @throws IOException */ public static void ma ...
- IO流7 --- FileWriter写出数据的操作 --- 技术搬运工(尚硅谷)
FileWriter字符输出 @Test public void test3(){ File file = new File("hello1.txt"); FileWriter f ...
- java学习笔记--IO流
第十二章大纲: I/O input/output 输入/输出 一.创建文件,借助File类来实现 file.createNewFile() : 创建文件 file.exists() : 判断文件是否存 ...
- Java中IO流的总结
有关Java中IO流总结图 流分类 按方向分 输入流 输出流 按单位分 字节流 字符流 按功能分 节点流 处理流(过滤流) 其他 所有的流继承与这四类流:InputSteam.OutputStream ...
- Io流的使用
file的使用 文件流的使用 FileInpunStream FileOutOputStream ----------字符流 FileReader Filewriter --------字节流 ...
- 一文看懂java的IO流
废话不多说,直接上代码 import com.fasterxml.jackson.databind.ObjectMapper; import java.io.*; import java.nio.ch ...
- java中的io流总结(一)
知识点:基于抽象基类字节流(InputStream和OutputStream).字符流(Reader和Writer)的特性,处理纯文本文件,优先考虑使用字符流BufferedReader/Buffer ...
- IO流的简单实现
IO流的几种实现方式 学习目标: 例题: 字节输出流 字节输入流 字符输入流 字符输出流 学习目标: 熟练掌握IO流的基本实现方式 例题: 字节输出流 代码如下: public class Outpu ...
随机推荐
- 对比append插入数据产生的redo量
--版本信息 SELECT * FROM v$version; Oracle - Prod PL - Production CORE Production TNS - Production NLSRT ...
- nginx对指定目录做代理
环境介绍 web1,作为前端端服务器,访问地址是http://192.168.1.1,要将http://192.168.1.1/bbs的请求交给web2.在web1的网站根目录下并没有bbs目录 we ...
- css3中-moz、-ms、-webkit分别代表的意思
这三个分别是目前流行的三种浏览器的私有属性 -moz代表firefox浏览器私有属性 -ms代表ie浏览器私有属性(360浏览器是ie内核) -webkit代表safari.chrome私有属性 -o ...
- Linux下部署weblogic应用
1.Linux下weblogic安装 2.Linux下设置weblogic监听服务器地址(默认为本机) 1).修改domain\config\config.xml文件 修改 <server> ...
- [转]使用 LDAP OU 限制访问
使用 LDAP OU 限制访问 http://www-01.ibm.com/support/knowledgecenter/api/content/SSEP7J_10.2.2/com.ibm.swg. ...
- django2.0的reverse
导入: 官方文档地址:https://yiyibooks.cn/xx/Django_1.11.6/topics/http/urls.html from django.urls import rever ...
- 如何开启SUSE Linux的SSH
1. 使用命令行停止防火墙 /etc/init.d/SuSEfirewall2_init stop /etc/init.d/SuSEfirewall2_setup stop 2. 修改 vi /etc ...
- echarts 图表建立步骤
需要引用的文件 <script src="web/mobile/js/jquery-1.8.3.min.js"></script> <script s ...
- hammer.js触摸,手指缩放等许多手势操作
使用方法: 插件描述:Hammer.js是一个开源的,轻量级的javascript库,它可以在不需要依赖其他东西的情况下识别触摸,鼠标事件. <script src="http://e ...
- 【SQL】全关系操作
1.消除重复 - DISTINCT SQL语句中默认的是,重复的元祖可以多次的显示.如果希望消除重复,需要DISTINCT关键字. 注:消除重复需要排序,所以代价高.在需要高效率时要谨慎. SELEC ...