1 File类基本操作

1 File类是什么东西?

File类就是描述路径的东西(对应可能是文件或者文件夹),它不描述内容

File file=new File("E:\\him");  \\描述目录 此时父路径为e:\\

File file=new File("E:\\him\\1.txt);\\描述文件  此时父路径为e:\\him

总结,只要是一个路径,不需要调用方法,通过字符串就可以看出它的父路径. 如果是一个文件 那么它的文件名肯定是在路径的末尾

2 常用方法

1)exists ()//判断文件或者目录是否存在

怎么才叫路径存在呢?

比如

File file=new File("E:\\A\\B\\C\\1.txt");
System.out.println(file.exists());

此时在E盘下 就要有个A文件夹下的B文件夹下的C文件夹下有个1.txt 不然就不存在

2)createNewFile()

创建一个文件

例如

File file=new File("E:\\A\\test.txt");
if(!file.exists())
{
file.createNewFile();
}

3)但是 这里需要重点谈到的是,这样是创建不成功的,因为这样必须有e:\\A这样的父路径 如果不存在A文件夹就不会成功 所以记住一点 创建文件时父路径一定要存在

我们可以先判断父路径是否存在,然后创建目录,方法为mkdir() 如果父路径由多个文件夹组成 则使用mkdirs()方法  经过测试 好像这两个方法都能用于创建多级目录

4)删除路径

这个删除某个路径的父路径后面的文件或者目录

例如 e:\\test\\1.txt  调用delete() 只会删除1.txt 如果是e:\\text\\A  只会删除A

如果在 对目录使用createNewFile 就会生成一个目录名的文件(因为没人规定没有后缀就不能是文件了)如果对文件使用makedir 则会生成带后缀的文件夹

串起来的一串示例代码是这样的

File file=new File("E:\\A\\test.txt");
if(!file.getParentFile().exists())
{
file.getParentFile().mkdir();
}

if(!file.exists())
{
file.createNewFile();
}

总结 对于文件的操作规律 不亲自在电脑里试是很难感觉到它究竟是怎么回事 所以多实践 多尝试 自然就懂得它的意思。

时间: 2024-09-30 05:41:14

1 File类基本操作的相关文章

File类基本操作之OutputStream字节输出流

贴代码了,已经測试,可正常编译 package org.mark.streamRW; import java.io.File; import java.io.FileOutputStream; import java.io.OutputStream; /** * 字节流输出OutputStream * 注意:1,write(byte[] b)数组方法写入: * * @author Mark */ public class OutputStream1 { /** * @param args */

File类的基本操作之RandomAccessFile写入操作

今天学习java io中File类下的 RandomAccessfile,欢迎留言讨论,其他知识看api package org.mark.randomaccessfile; import java.io.File; import java.io.RandomAccessFile; /** * 写入操作 */ public class RandomAccessfileDemo1 { /** * @param args */ public static void main(String[] arg

File类的基本操作之RandomAccessFile读取

直接贴代码了,不懂的地方留言讨论 package org.mark.randomaccessfile; import java.io.File; import java.io.FileNotFoundException; import java.io.RandomAccessFile; public class RandomAccessfileDemo2 { /** * @param args * @throws Exception */ public static void main(Stri

java File类的基本操作

(如果有谁想要这个软件的话,在评论中留一个邮箱吧.) 前几天好几次看到有朋友晒出玩2048刷高分的截图,我就想我能不能也做一个2048呢?仔细想了想2048游戏的规律,发现其实逻辑上很简单,也不用研究什么算法,于是我马上觉得我可以很快写出来.当天下午我就用了四个小时完成了2048的基本功能.几天后觉得不满足,于是给我的2048加了存档.读档和后退一步的功能,这样就更好刷分了呢! 使用语言:C#: 平台:Visual Studio 2012 Win Form. 如何完成2048的基本功能呢?204

File类的基本操作之InputStream字节输入流

话不多少,我直接把代码贴上来了.有什么问题请给我留言 package org.mark.streamRW; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; /** * 字节输出流:OutputStream,整个IO包中字节输出流的最大父类 * 字节输入流:InputStream * * InputStream使用子类FileInputStream.读取 */ public class

File类的基本操作之读出所有目录路径

package org.mark.file; import java.io.File; /** * File类的基本操作之读出所有文件夹路径 * 假设给定一个文件夹,要求将此文件夹中的所有文件都列出来 * 使用递归 */ public class TestChare { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub File mark = new F

File类的基本操作之读出全部文件夹路径

package org.mark.file; import java.io.File; /** * File类的基本操作之读出全部文件夹路径 * 如果给定一个目录,要求将此目录中的全部文件都列出来 * 使用递归 */ public class TestChare { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub File mark = new Fil

File 类 的基本操作

//  File 类(静态类)             //创建一个文件            // File.Create(@"C:\Users\wbrm\Desktop\wbrm.txt");  //创建文件            //Console.WriteLine("创建成功");            //Console.ReadKey(); //删除一个文件 彻底删除            // File.Delete(@"C:\Users\

C#基础[11] 文件管理(File类)

基本操作:判存.复制.移动.删除基本方法:File.Exist();File.Copy();File.Move();File.Delete() 补充:文本文件编码,文本文件有不同的存储方式,将字符串以什么样的形式保存为二进制,这个就是编码,UTF-8.ASCII.Unicode,gbk gb2312等,如果出现乱码一般就是编码的问题,文本文件相关的函数一般都有一个Encoding类型的参数,取得编码的方式:Encoding.Default.Encoding.UTF8.Encoding.GetEn