public static void main(String[] args) {

String filename = "F:/zhangming_test/test.txt";

String filename1 = "F:/zhangming_test/test1.txt";

String docfileName = "F:/猪猪猫xp系统.rar";

// String filename = "F:/zhangming_test/test_doc.doc";

// readFile(filename);

// copyFileBychar(filename);

copyFileByByte(docfileName);

System.out.println("ddd");

}

/**

* 该方法只支持读取字符文件并复制文件. 按行读取的 文件锁未考虑

*

* @param filename

*/

public static void copyFileBychar(String filename) {

FileReader fileReader = null;

BufferedWriter bufferedWriter = null;

try {

bufferedWriter = new BufferedWriter(new PrintWriter(new File(

"F:/zhangming_test/test2.txt")));

fileReader = new FileReader(new File(filename));

} catch (FileNotFoundException e) {

e.printStackTrace();

}

BufferedReader bufferedReader = new BufferedReader(fileReader);

String linecontent = null;

try {

// 調用readLine方法會移動流的指針

while ((linecontent = bufferedReader.readLine()) != null) {

System.out.println(linecontent);

bufferedWriter.write(linecontent);

}

bufferedWriter.flush();

} catch (IOException e) {

e.printStackTrace();

} finally {

try {

bufferedReader.close();

bufferedWriter.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

/**

* 每次读取一定数量byte的文件流. 文件锁未考虑

* @param inputFileName

*/

public static void copyFileByByte(String inputFileName) {

InputStream inputStream = null;

OutputStream outputStream = null;

try {

inputStream = new FileInputStream(new File(inputFileName));

// ==方法一(一次性把文件的所有内容都添加读取到byte中)==

// inputStream.read(bs);

// outputStream = new FileOutputStream(new File(

// "F:/zhangming_test/test6.doc"));

// outputStream.write(bs);

// ==方法二==

outputStream = new FileOutputStream(new File(

"F:/猪猪猫xp系统1.rar"));

byte[] tmpBytes = new byte[1024];

while (inputStream.read(tmpBytes) != -1) {

outputStream.write(tmpBytes, 0, tmpBytes.length);

}

outputStream.flush();

} catch (FileNotFoundException e) {

e.printStackTrace();

} catch (IOException e) {

} finally {

try {

outputStream.close();

inputStream.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

public static void copyFileWithNio(String srcFile, String destFile) {

try {

FileChannel srcChannel = new FileInputStream(new File(srcFile))

.getChannel();

FileChannel destChannel = new FileOutputStream(new File(destFile))

.getChannel();

try {

destChannel.transferFrom(srcChannel, 0, srcChannel.size());

} catch (IOException e) {

e.printStackTrace();

} finally {

try {

srcChannel.close();

destChannel.close();

} catch (IOException e) {

e.printStackTrace();

}

}

} catch (FileNotFoundException e) {

e.printStackTrace();

}

} //最简单,使用代码最少。

以后开发的时候要用直接拿过来修修改改就OK了。当然可以考虑使用nio读取.

1

4

分享到:

2011-08-08 14:39

浏览 1167

评论

java 文件io操作_java文件IO操作。相关推荐

  1. java文件操作_Java文件操作大全

    文件属性的取得 文件属性的取得 String path=request.getRealPath("/"); File f=new File(path,"ReadData. ...

  2. java io 结构_java 的IO类库的基本架构

    java IO 操作的类在java.io 包中,大概可以分为以下几组: 基于字节操作的接口:InputStream 和 OutputStream 基于字符操作的接口:Writer 和 Reader 基 ...

  3. java文件与流_Java文件和流深入

    1.什么是数据流? 数据流是指所有的数据通信通道.有两类流,InputStream and OutputStream,Java中每一种流的基本功能依赖于它们.InputStream用于read,Out ...

  4. java io处理_java之IO处理

    一.Java的 IO 处理 1. input output 输入和输出 2. 输入? --学习对于学生来说 -- 由外面的信息到大脑 -- 由外存到内存 3. 输出? -- 授课对于老师来说 -- 由 ...

  5. java 处理换行符_Java 文件换行符识别与转换

    项目经验,如需转载,请注明作者:Yuloran (t.cn/EGU6c76) 背景 项目开发需要手动合入几十种语言的翻译到 string.xml 中,这是一件非常痛苦的事情:Copy.Paste,Co ...

  6. java 文件写入 读取_JAVA文件的两种读取方法和三种写入方法

    在使用java对文件进行读写操作时,有多种方法可以使用,但不同的方法有不同的性能. 此文对常用的读写方法进行了整理,以备不时之需. 1.文件的读取 主要介绍两种常用的读取方法.按行读取和按字符块读取. ...

  7. java 调用 swf 文件上传_java文件上传方法

    文件上传方法(一次上传一个文件,多个文件的话,请写循环调用) Upload.uploadFile(theFile, filePath) 说明: theFile:类型是FormFile filePath ...

  8. java 连接 sftp失败_java – 文件上传到SFTP失败(Apache VFS)

    我有一个SFTP问题( Windows WinSSHD).我尝试用 Apache Commons VFS在一个文件夹中写一个文件.在本地SFTP上我没有上传的问题,但在第二个SFTP上我总是得到以下错 ...

  9. java复制和上传_java文件上传复制等功能

    package com.sitech.message.controller.task; import java.io.File;//引入类 import java.io.FileInputStream ...

  10. java文件与流_Java文件与流

    文件 文件管理通过java.io包下.file类 作用: 1.文件属性 2.文件检查 3.文件删除 4.不包含对其文件内容的处理 File类的构造 语法: File f =new File(Strin ...

最新文章

  1. Windows 10预览版14316开启Bash命令支持
  2. Linux常用的文本查找命令 find
  3. 服务器控制台网页登录,云服务器管理控制台登录网站
  4. 微软应用商店错误代码“0x80131500”怎么修复?
  5. 倒立摆:Simulink建模
  6. css 伪类 :fullscreen 应用于当前处于全屏显示模式的元素。
  7. 分辨率,定位精度,重复定位精度解释
  8. html鼠标滚轮监听,js鼠标滑轮滚动监听触发事件
  9. Macbook pro md318 升级SSD以及8G内存过程以及问题总结
  10. C语言写的小游戏源码,c语言小游戏源码(华容道)
  11. [Error] expected declaration or statement at end of input
  12. 0816常见错误分析
  13. MockLab:基于MockLab的第三方平台对接测试
  14. 分享 海康威视,浙江大华,科大讯飞面试经历
  15. 32. DDR2内存内部结构-1
  16. Unity | 如何调用摄像头拍照
  17. CSS样式表继承和优先级
  18. Thread Specific Storage
  19. 3D投影变换(含透视投影Perspective Projection)
  20. Python自定义装饰器

热门文章

  1. 容联云Q3营收2.76亿元,技术驱动构建“通讯+AI+数据”核心能力
  2. 服务器声卡图标显示x,简单几步解决win7声音图标显示红叉的问题
  3. 做论文必须知道什么叫review
  4. 在家挣钱的十种方法,看看你适合哪个?
  5. 云计算与大数据相关知识点
  6. unknown key for a start_array in [_score]
  7. 前嗅ForeSpider教程:采集列表和正文的数据
  8. WinCC Alarmhelper,帮助将WinCC报警信息实时推送至用户微信端
  9. 推荐系统实用分析技巧
  10. 雷达泥水位计的安装方法