(一)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的更多相关文章

  1. 黑马程序员——JAVA基础之IO流FileReader,FileWriter

    ------- android培训.java培训.期待与您交流! ---------- IO(Input Output)流  IO流用来处理设备之间的数据传输 Java对数据的操作是通过流的方式 J ...

  2. Java I/O---字符与字节转换流---FileReader&FileWriter:

      public class SubTransStreamDemo { /** * @param args * @throws IOException */ public static void ma ...

  3. IO流7 --- FileWriter写出数据的操作 --- 技术搬运工(尚硅谷)

    FileWriter字符输出 @Test public void test3(){ File file = new File("hello1.txt"); FileWriter f ...

  4. java学习笔记--IO流

    第十二章大纲: I/O input/output 输入/输出 一.创建文件,借助File类来实现 file.createNewFile() : 创建文件 file.exists() : 判断文件是否存 ...

  5. Java中IO流的总结

    有关Java中IO流总结图 流分类 按方向分 输入流 输出流 按单位分 字节流 字符流 按功能分 节点流 处理流(过滤流) 其他 所有的流继承与这四类流:InputSteam.OutputStream ...

  6. Io流的使用

    file的使用 文件流的使用 FileInpunStream  FileOutOputStream   ----------字符流 FileReader Filewriter --------字节流  ...

  7. 一文看懂java的IO流

    废话不多说,直接上代码 import com.fasterxml.jackson.databind.ObjectMapper; import java.io.*; import java.nio.ch ...

  8. java中的io流总结(一)

    知识点:基于抽象基类字节流(InputStream和OutputStream).字符流(Reader和Writer)的特性,处理纯文本文件,优先考虑使用字符流BufferedReader/Buffer ...

  9. IO流的简单实现

    IO流的几种实现方式 学习目标: 例题: 字节输出流 字节输入流 字符输入流 字符输出流 学习目标: 熟练掌握IO流的基本实现方式 例题: 字节输出流 代码如下: public class Outpu ...

随机推荐

  1. STM32 启动代码 bootloader

    什么是启动代码?     启动代码是系统上电或者复位后运行的第一段代码,是进入C 语言的main 函数之前需要执行的那段汇编代码.STM32的启动代码在startup_stm32f10x_hd.s 启 ...

  2. tomcat 配置文件中设置JAVA_HOME

    Tomcat默认情况下会用系统的环境变量中找到JAVA_HOME和JRE_HOME.但是有的时候我们需要不同版本的JDK共存. 可以在${TOMCAT_HOME}/bin/setclasspath.b ...

  3. 基于MapReduce的手机流量统计分析

    1,代码 package mr; import java.io.IOException; import org.apache.commons.lang.StringUtils; import org. ...

  4. jsp和servlet之间传数据

    一.jsp与java文件传递数据可以使用Servlet类来传递,jsp将数据存入到request对象中,Servlet类获取这个request对象,并将数据取出. 示例代码如下: JSP代码: < ...

  5. [POJ2187][BZOJ1069]旋转卡壳

    旋转卡壳 到现在依然不确定要怎么读... 以最远点对问题为例,枚举凸包上的两个点是最简单的想法,时间复杂度O(n2) 我们想象用两条平行线卡着这个凸包,当其中一个向某个方向旋转的时候另一个显然也是朝同 ...

  6. thinkphp 导入微信小程序加密解密库

    第三方类库 第三方类库指除了 ThinkPHP 框架.应用项目类库之外的其他类库,一般由第三方系统或产品提供,如 Smarty.Zend 等系统的类库等. 前面使用自动加载或 import 方法导入的 ...

  7. asp单页面301跳转

    <% Response.Status="301 Moved Permanently"Response.AddHeader "Location", &quo ...

  8. 如何重新签名ipa文件

    http://www.cocoachina.com/bbs/read.php?tid=185963 求ipa文件修改后重新打包的方法,我已经有开发者账号了. 替换了ipa里的图片后,就无法安装了,似乎 ...

  9. 移动开发之css3实现背景渐变效果

    前段时间由于手机项目需要实现一个背景渐变功能,  开始是想切个小背景图平铺下,  后来想到css3可以实现,如是用下面的代码就实现了. .sec_case_list li  span{ backgro ...

  10. ECharts问题--柱状图和折线图中xAxis.data为空时报错问题解决

    1. 我们在日常的开发中使用Echarts时,不像在学习的过程中是自己在option中的配置项填写图表需要的参数,而是通过ajax请求后台,获取数据后,使用javascript来动态的修改数据,但是有 ...