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读取.
分享到:
相关推荐
详细介绍了JAVA常用的文件IO接口类和内存读写接口类。
主要给大家介绍了关于Java文件IO操作教程之DirectIO的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
java io 文件操作大全 目录的建立/检查与删除 如何在JSP中处理虚拟目录 文件属性的取得 取出目录中文件的方法 判断是否为空白文件 读取所有的文件数据 一行一行读取数据 略过文件中的字符不读取 将数据写入文件 将...
Java 中的一些基本文件操作,包括:文件操作(移动、读写)和文本文件读写
java做的简单文件IO操作,实现文件的读写追加功能。 压缩包里面有程序运行时的截图。
java_io_文件操作_复制_删除_移动_下载
完整的文件io 流操作,有四个函数, Writer read inputStream outputStream自己总结的东东,让大家用用,不图得分,
主要介绍了Java基于IO流读取文件的方法,涉及Java文件流操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
java编写的简单的io操作源代码!包含文件的复制,删除,新建,移动等一般的操作!很详细
java I\O流及文件操作,是初学者很好的资源。
java IO写入读取操作,防止乱码,JavaIO分页读取
用java对文件操作的一些代码(包括文件读取,移动,删除,复制......)
io java 文件操作 命令 全部 io java 文件操作 命令 全部 io java 文件操作 命令 全部 io java 文件操作 命令 全部
Java_IO种各接口描述,File类,文件和目录操作
文件流 读写操作,对java.io.*;中文件读写的一些相关信息
集成创建文件,创建目录,删除单个文件,删除单个目录,删除文件夹里内容,复制文件,复制文件夹,剪切文件,剪切文件夹等操作方法. 特上传分享
java_IO操作_(读写、追加、删除、移动、复制、修改)
Java IO文件操作类与复制文件实例,有关文本编辑、FileWriter文件写入、FileReade文件读娶DataStream文件数据流、BufferedReader文件暂存器、FileViewer文件浏览器、复制文件Copy等方面的操作要领,仅供学习参考。
关于java的IO流基础的练习,适合刚接触IO流,没有基础的同学
JAVA IO文件操作实用ppt教程,从入门学起,有丰富的例子