您的位置:首页 > 职场人生

黑马程序员——java基础之文件复制

2014-06-18 23:09 204 查看
----------------------
ASP.Net+Unity开发、.Net培训、期待与您交流!----------------------

<a href="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>、<a href="http://www.itheima.com"target="blank">.Net培训</a>、期待与您交流!

文件复制的两种方法。这里主要讲解的是第一种该注意的地方。

注意,在用单个字符即取即存的时候,ch=fr.read() ,ch就是等于读取到的字符的ASCII对应的整型数据。在写入的时候,fw.write(ch) 。write( int ch).传入的是整型,写入后,自动转成char型。而在使用数组的时候,len = fr.read(buf)),len则等于读取到的字符数组的长度,字符仍缓存在字符数组buf中。字符都是通过flush或者close刷入文件中的。

import java.io.*;
/*
文件复制原理:
将C盘文件下的数据存储到D盘的一个文件下

步骤:
1.在D盘下创建一个文件,来存储C盘文件中的数据
2.定义读取流和C盘文件关联
3.通过不断的读写完成数据存储
4.关闭数据流
*/

class CopyText
{
public static void main(String[] args) throws IOException
{
copy_1();

}

public static void copy_2()
{
FileWriter fw = null ;
FileReader fr = null ;
try
{
fw = new FileWriter("demo.txt");
fr = new FileReader("1.txt");

char[] ch = new char[1024];
int len = 0;
while ((len = fr.read(buf))!=-1)
{
fw.write(buf,0,len);
}

}
catch (IOException e)
{
throw new RuntimeException("读写失败");

}
finally
{
if(fr!=null)
try
{
fr.close();
}
catch (IOException e)
{

}
if(fw!=null)
try
{
fw.close();
}
catch (IOException e)
{
}

}

}

//从C盘读取一个字符,就往D盘写入一个字符
public static void copy_1() throws IOException
{
//创建目的地
FileWriter fw = new FileWriter("1.txt");
//与已有文件关联
FileReader fr = new FileReader("demo.txt");

int ch = 0;

while ((ch=fr.read())!=-1)
{
fw.write(ch);
System.out.println((char)ch);

}
System.out.println(ch);
fw.close();
fr.close();

}

}


----------------------
ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐