java文件(文件夹)操作
java中文件操作
判断是否为文件file.isFile()方法
判断是否为目录file.isDirectory()方法
判断是否存在file.exist()方法
创建新文件file.createNewFile()
删除文件file.delete()
重命名file.renameTo(new File("Desktop/javatester.txt"));windows环境下需要注意不能直接跨盘操作
写文件为什么最后要用close()方法关闭流?
不调用此方法,可能系统还没有完成所有数据的写操作,程序执行完毕结束,导致流中的最后一些数据没有写入文件,这取决于操作系统的繁忙程度和硬盘IO效率。
而添加close(方法后,close()方法为程序一部分,close()执行前必须数据流写完毕,然后执行close(),最后程序再结束
写少量文本内容时,用FileWriter类还可以,但是大量数据时,最好用BufferedWriter
package com.starain.io;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
public class FileOperation {
public static void main(String[] args) throws IOException {
File file1 = new File("D:\\hello4.txt");
File file2 = new File("D:\\hello4.txt");
if(file1.exists()){//判断file1文件是否存在
file1.delete();//删除file1文件
}
/*测试file1是否已经删除*/
if(file1.exists()){
System.out.println("file existed");
}else {
System.out.println("had been deleted");
}
/*如果file2不存在则创建file2,然后命名为test5.txt*/
if(!file2.exists()){
//抛出异常
try {
file2.createNewFile();//创建文件
System.out.println("文件已经创建");
} catch (IOException e) {
System.out.println("文件无法创建");
}
if(file2.isFile()){
//重命名
File name = new File("D:\\test5.txt");
file2.renameTo(name);
}
/*写文件*/
//FileWriter形式,不带缓冲,适合内容较少时
String pathName1 = "D:/test5.txt";
FileWriter filewriter1 = new FileWriter(pathName1);//可能抛出异常,所以用throw IOException或者try{}catch{}
filewriter1.write("This is a test program\n");
filewriter1.write("hello world");
filewriter1.close();//因为程序执行较快,但是文件读写较慢,
//不调用close()方法可能造成文件正在写时(未写完),程序执行完,写操作便终止,一些数据未写上去
//BufferedWriter高效的缓冲器流类
String pathName2 = "D:\\test6.txt";//文件不存在时自动创建,存在时覆盖旧文件
BufferedWriter filewriter2 = new BufferedWriter(new FileWriter(pathName2));
/*String pathName2 = "D:/test6.txt";
* FileWriter file1 = new FileWriter(pathName2);
* BufferedWriter filewriter2 = new BufferedWriter(file1);
*/
filewriter2.write("test6");
filewriter2.write("\nhello");//遇到非\n换行的系统导致不能正常换行
filewriter2.newLine();//newLine()方法换行,能解决不同系统间换行方法不同的难题
filewriter2.write("world");
filewriter2.close();//关闭流
}
}
}
java文件(文件夹)操作的更多相关文章
- Java笔记:文件夹操作
创建目录: File类中有两个方法可以用来创建文件夹: mkdir( )方法创建一个文件夹,成功则返回true,失败则返回false.失败表明File对象指定的路径已经存在,或者由于整个路径还不存在, ...
- java中文件的I/O操作
java中文件的读写操作 (一) (1)java中文件的字节转成字符读操作 FileInputStream fStream = new FileInputStream("test.txt&q ...
- Java的文件读写操作
file(内存)----输入流---->[程序]----输出流---->file(内存) 当我们读写文本文件的时候,采用Reader是非常方便的,比如FileReader,InputStr ...
- Java api 入门教程 之 JAVA的文件操作
I/O类使用 由于在IO操作中,需要使用的数据源有很多,作为一个IO技术的初学者,从读写文件开始学习IO技术是一个比较好的选择.因为文件是一种常见的数据源,而且读写文件也是程序员进行IO编程的一个基本 ...
- Java的文件读写操作 <转>
目录: file内存----输入流----程序----输出流----file内存 java中多种方式读文件 判断文件是否存在不存在创建文件 判断文件夹是否存在不存在创建文件夹 java 写文件的三种方 ...
- java 遍历文件夹里的文件
Java遍历文件夹的2种方法: A.不使用递归: import java.io.File; import java.util.LinkedList; public class FileSystem { ...
- java常见文件操作
收集整理的java常见文件操作,方便平时使用: //1.创建文件夹 //import java.io.*; File myFolderPath = new File(str1); try { if ( ...
- JAVA之旅(二十八)——File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤
JAVA之旅(二十八)--File概述,创建,删除,判断文件存在,创建文件夹,判断是否为文件/文件夹,获取信息,文件列表,文件过滤 我们可以继续了,今天说下File 一.File概述 文件的操作是非常 ...
- Java多种方式读文件,追加文件内容,等对文件的各种操作
一.多种方式读文件内容. 1.按字节读取文件内容 2.按字符读取文件内容 3.按行读取文件内容 4.随机读取文件内容 import java.io.BufferedReader; import jav ...
- [转]Java的文件读写操作
file(内存)----输入流---->[程序]----输出流---->file(内存) 当我们读写文本文件的时候,采用Reader是非常方便的,比如FileReader,InputStr ...
随机推荐
- 使用CSS、JS的几种方法
引用CSS到html网页里的4种方法 1.行内式 在标记的style属性中设定CSS样式,这种方式本质上没有体现出CSS的优势,因此不推荐使用 <div style="widt ...
- codevs2492上帝造题的七分钟 2(线段树)
/* 区间修改 区间查询 可以用线段树搞 但是一般的标记下放对这个题好像不合适 只能改叶子 然后更新父亲(虽然跑的有点慢) 小优化:如果某个点是1 就不用再开方了 所以搞一个f[i]标记 i 这个点还 ...
- angular中ueditor插件的使用
#在angularjs中使用ueditor编辑器需要注意事项: 在ui-view中使用放置ueditor的div,页面加载时编辑器在页面中是不显示的,需要通过指令手动replay 例: /** * u ...
- 基于CANVAS与MD5的客户端生成验证码
好久没写东西,工作太忙了!不想服务端请求太多,搞了个这玩意儿,不过项目中并不会用上,还是使用服务端生成的机制(会安全多少呢?):我就想问个问题,除了图像识别来破解这样的简单验证码外,针对我这种例子,可 ...
- xfire找不到services.xml
java.io.FileNotFoundException: class path resource [META-INF/xfire/services.xml] cannot be opened be ...
- 【转】 iOS 两种方法实现左右滑动出现侧边菜单栏 slide view
原文: http://blog.csdn.net/crayondeng/article/details/9057637 --- 关于评论中,很多网友都是需要这部分的相关源码,其实在我上传的新浪微博 ...
- AutoLayout适配
http://www.raywenderlich.com/113768/adaptive-layout-tutorial-in-ios-9-getting-started iOS布局和屏幕适配的一点总 ...
- 【NEERC 2003】有向图破坏
[题目描述] Alice和Bob正在玩如下的游戏.首先Alice画一个有N个顶点,M条边的有向图.然后Bob试着摧毁它.在一次操作中他可以找到图中的一个点,并且删除它所有的入边或所有的出边. Alic ...
- webBrowser(网络转载)
C#WebBrowser控件使用教程与技巧收集--苏飞收集 先来看看常用的方法 [C#] 纯文本查看 复制代码 ? 01 02 03 04 05 06 07 08 09 10 11 12 13 14 ...
- 解决SQL Server Management Studio Express不支持更新全文目录的方法
微软的说法:https://msdn.microsoft.com/zh-cn/library/ms365247.aspx 可以用命令创建: A.创建唯一索引.全文目录和全文索引 以下示例对 Adven ...