当前位置: 移动技术网 > IT编程>开发语言>Java > java基础之文件操作和IO

java基础之文件操作和IO

2020年07月12日  | 移动技术网IT编程  | 我要评论

写博客的原因

单纯的是记性不太好,写下来强化记忆,希望大家在学习编程的过程中多动手敲代码(动手还是很重要的)。ps:文章中如果引用到了您的内容请联系我,我会尽快删除。

大体内容

昨天学习Javaweb中JDBC处理大文本的时候,由于java基础的薄弱,回去重新学习了file类和io流。

正文

在下面的代码中
File file = new File(“d:/xyz.txt”);
File可以代表一个不存在的文件(临时)
即 d:/xyz.txt这个文件是可以不存在的
file中的一些方法:file.createfile 创建一个文件(接上文的话,文件名为xyz.txt)
file.extents 判断文件是否存在
file.delete 删除文件(这里的删除是彻底删除,不会回到回收站)
file.isFile 判断是否是文件
file.isDirectory 判断是否是目录
file.getpath 相对路径
file.getAbsolutepath 绝对路径
file.getName 文件名称
file.length 文件大小(返回值是byte)

回到io
io:inputstream输入流 outputstream 输出流
输入输出都是相对的,以内存为参考点,流入内存叫做输入流,流出内存叫做输出流。
流是一种FIFO(先进先出的数据结构)
分类:
按流分:输入流、输出流
按处理单元:字节流、字符流、其他流
流操作是需要关闭的,一般遵从先开后关,后开先关。
附上一段今天学习时的代码:字节流实现文件的复制
public class FileCopy {

public static void main(String[] args) {

	InputStream in = null;
	OutputStream out  = null;
	try {
		in = new FileInputStream("d:/abc.txt");
		out = new FileOutputStream("d:/xyz.txt");
		byte []buf = new byte[10];                //开辟10字节的内存
		int len = -1;
		try {
			//read方法读到空的时候返回值是-1
			while ( (len = in.read(buf))!= -1) {  //in->buf
				//从in中读多少取多少,避免最后一次读取多取的情况
				out.write(buf,0,len);             //buf->out
			}
		} catch (IOException e) {
			e.printStackTrace();
		}
		
	} catch (FileNotFoundException e) {
		e.printStackTrace();
	}
	finally {
		try {
			//if 为了防止空指针
			if(out!= null)out.close();
			if(in!= null)in.close();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

}

本文地址:https://blog.csdn.net/weixin_44288111/article/details/107289560

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网