`
hsyzijvaa
  • 浏览: 111808 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Java文件操作

    博客分类:
  • java
阅读更多
    java对文件的操作,提供了上百个类来操作。
 
对与我们常用的有,outputstreamwriter、writer、bufferedoutputstream、fileoutputstream以及fileinputstream、reader、inputstreamreader等相关类
 
先做个比较:对文本文件操作时,我们一般使用filereader、bufferedreader类;而非文件、即二进制文件操作时,我们使用inputstream以及相关类、而对于流的操作,在远程接口rmi,或者通信类的业务处理中,应用较多。
 
fileoutputstream以及bufferedoutputstream对文件写的操作;当操作大文件时,使用bufferedoutputstream的效率会明显比fileoutputstream高很多。
当然bufferedoutputstream继承自filteroutputstream;所以其功能也相当的丰富。并且在很多应用中我们都用到了filteroutputstream这个类,比如zip,jar包、rmi类和接口、crypto提供加密的类和接口等等
 
文件操作类中,也还有很多比较有用的类,比如文件流描述类filedescriptor等等;有待挖掘
 
当有特殊需求是,我们可以继承上面的接口或者扩展上面的类,来实现特殊的业务。
 
 
package com.xiva.demo;import java.io.bufferedoutputstream;import java.io.bufferedreader;import java.io.bufferedwriter;import java.io.file;import java.io.fileoutputstream;import java.io.filereader;import java.io.filewriter;import java.io.ioexception;import java.io.inputstream;import java.io.outputstream;import java.io.outputstreamwriter;import java.io.reader;import java.io.writer;import java.util.scanner;import org.junit.test;public class filedemo {		/**	 * 	 * @description 删除文件	 * @author xiva	 */	@test public void deletefile(){		file file = new file("src/_tian.jpg");		boolean res = false;		if(file.exists()){			res = file.delete();		}		if(res){			system.out.println("delete success!");		}else{			system.out.println("delete fail!");		}	}		/**	 * 	 * @description 文件重命名	 * @author xiva	 */	@test public void renamefile(){		file file = new file("src/_tian.jpg");		boolean res = false;				if(file.exists() &amp;&amp; file.isfile()){			res = file.renameto(new file("src/tian.jpg"));		}		if(res){			system.out.println("copy success!");		}else{			system.out.println("copy fail!");		}	}		/**	 * 	 * @description 读取文本文件内容	 * @author xiva	 * @throws ioexception	 */	@test public void readfile() throws ioexception{		inputstream is = filedemo.class.getclassloader().getresourceasstream("dbcpconfig.properties");//		file file = new file("src/content.txt");//		filereader freader = new filereader(file);		//流编码才是字节编码//		reader isreader = new inputstreamreader(is, "utf-8");//		bufferedreader buffer = new bufferedreader(isreader);//		string linestr;//		linestr = buffer.readline();//		while(linestr != null){//			system.out.println(linestr);//			linestr = buffer.readline();//		} 		//scanner类提供更多方便的方法,最为主要的是为文本文件操作提供便利的函数		scanner sc = new scanner(is,"utf-8");		while(sc.hasnextline()){			system.out.println(sc.nextline());		}				is.close();	}		/**	 * 	 * @description filewriter写文件	 * @author xiva	 * @throws ioexception	 */	@test public void writefile() throws ioexception{		file file = new file("src/test.txt");		if(!file.exists()){			file.createnewfile();		}		//		reader isreader = new filereader(file);//		bufferedreader buffer = new bufferedreader(isreader);//		string linestr;//		linestr = buffer.readline();				scanner sc = new scanner(file,"utf-8");		stringbuffer sbuffer = new stringbuffer();		while (sc.hasnextline()){			sbuffer.append(sc.nextline());		}		//append if true, then bytes will be written to the end of the file rather than the beginning		filewriter fw = new filewriter(file,true);		bufferedwriter bw = new bufferedwriter(fw);				bw.append(sbuffer.tostring());		bw.write("i'm xiva,我是xiva");		bw.newline();		bw.write("i'm njit.shot_go,我是shot_go");//		string message = "i'm njit.shot_go,我是shot_go";//		for(char mc:message.tochararray()){//			bw.append(mc);//		}				bw.flush();		bw.close();		fw.close();	}		/**	 * 	 * @description fileoutputstream写文件	 * @author xiva	 * @throws ioexception	 */	@test public void writefosfile() throws ioexception{		file file = new file("src/test.txt");		if(!file.exists()){			file.createnewfile();		}		//append if true, then bytes will be written to the end of the file rather than the beginning		fileoutputstream fos = new fileoutputstream(file,true);		bufferedoutputstream bos = new bufferedoutputstream(fos);		for (int i=0; i<100000; i++){			string message = "i'm njit.shot_go,我是shot_go";			bos.write(message.getbytes());			bos.flush();			bos.write("\r\n".getbytes());		}		bos.close();		fos.close();	}		/**	 * 	 * @description 文件列表	 * @author xiva	 * @param rootfile	 */	public void listdictionary(file rootfile){		file[] files = rootfile.listfiles();		for (file file:files){			if(file.isdirectory()){				system.out.println("add to tree node");				listdictionary(file);			}else{				system.out.println(file.getpath());			}		}	}		@test public void testlistdictionary(){		file rootfile = new file("e:"+ file.separatorchar +"liber");		listdictionary(rootfile);	}	}
 而对文件的操作,总结为:
1、删除文件或文件夹
2、创建文件或文件夹
3、读取文本或者二进制文件
4、写文本或者二进制文件(对于写二进制文件,我认为在图像处理以及音频视频处理中会使用到)
5、重命名文件,遍历文件,移动文件等等
 
0
2
分享到:
评论

相关推荐

    java文件操作类

    java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java文件操作类java...

    Java文件操作封装类

    Java文件操作封装类

    java文件操作工具类

    java文件操作工具类是java中针对文件操作的一个工具类,可以方便的读取,下载,上传文件等操作,希望可以帮到大家。

    Java文件操作源码大全

    Java文件操作是编程中常见的任务,涉及到文件的创建、删除、读取、写入以及更复杂的操作如复制、移动、加密、压缩等。以下是一些关键的Java文件操作知识点: 1. **创建文件夹**:使用`java.io.File`类的`mkdir()`或...

    java文件操作

    java 文件操作,创建文件,创建目录,删除文件目录

    java视频教程—Java文件操作

    java视频教程 Java文件操作 JavaFile

    java文件操作大全

    如何在Java中操作文件呢?转载供大家欣赏

    java文件操作(增删改查)

    本项目"java文件操作(增删改查)"是基于控制台实现的一个无界面程序,利用Eclipse集成开发环境编写,实现了基本的文件管理功能。下面我们将深入探讨这些知识点。 首先,我们要了解Java中的`java.io`包,它是处理输入...

    Java文件操作一例:Copy 复制文件.rar

    Java文件操作一例:Copy 复制文件,虽然是复制文件,不过通过本源码你可以学习很多相关的Java基础技巧,比如Java对文件的事件处理、取得目录内容的事件处理、如何弹出文件选择器、如何得到选择文件的绝对路径、如何...

    java文件操作大全.chm

    java文件操作大全.chm

    java 文件操作工具

    java 文件操作 压缩文件 解压文件 复制文件 复制文件夹

    java 文件操作工具类

    java 文件操作工具类

    java 文件操作大全107种情况

    java 文件操作 包括 文件删除 导出jsp Word 格式文件 ,文件合并修改等。

    《Java文件操作大全》电子书

    《Java文件操作大全》电子书 本文汇集常用文件操作方法,包括文件的建立/检查与删除,目录的建立/检查与删除,取出目录中文件,文件属性的取得,逐行读取数据等等。

    java 文件操作(对文件的输入输出)

    在Java编程语言中,文件操作是一项基础且重要的任务,它涉及到对文件的读取、写入、创建、删除等操作。文件操作主要依赖于Java的I/O(Input/Output)库,包括字节流(Byte Stream)和字符流(Character Stream),...

    Java文件操作大全

    最全的java文件操作大全,包括文件的存储,建立,判断文件是否存在,建立文件删除文件,附加源码!!!

    java 文件操作总汇

    java 文件操作 ;base64--转码与解码 ;excel --读写 ;properties--读 ; txt--读写 ; xml --读写 ;压缩包-- 解压,打包; zip --解压,打包 ;调用本地exe

    Java文件操作方法总结

    Java文件操作中的一些常用方法的总结,可以参考参考啦!

Global site tag (gtag.js) - Google Analytics