java创建本地文件_java的本地文件操作

一、文件的创建、删除和重命名

File file = new File("/bin/hello.txt");//文件无法被创建,系统找不到指定的路径

file.createNewFile();

File file = new File("bin/hello.txt");

file.createNewFile();

File file = new File("../hello.txt");//在当前目录的上一层目录创建文件

file.createNewFile();

File file = new File("../../hello.txt");//在当前目录的上一层目录创建文件

file.createNewFile();

file.exists()

File nameto = new File("Hello.txt");

file.renameTo(nameto);//重命名文件

重命名文件,达到了移动文件的效果,跨目录时,要求源和目的必须处于同一个分区

另外如果目标的重命名文件已经存在,重命名操作也会失败的

文件处于不同的分区,需要使用文件的copy,而不是重命名

File nameto = new File("src/new Hello.txt");

file.renameTo(nameto);//重命名文件

//文件

file.isFile();

//路径(文件夹)

file.isDirectory();

file.delete();//删除文件

二、文件夹的创建、删除和重命名

File folder1 = new File("my new folder");

File folder2 = new File("my new folder/one/two/three/main");

mkdirDemo(folder1);

mkdirsDemo(folder2);

File newfolder = new File("my new folder-new");

renameFolder(folder1, newfolder);

File newfolder2 = new File("my new folder/one/2/three/main");

renameFolder(folder2, newfolder2);//重命名失败,被重命名的文件夹在构造函数中,必须是多级目录的最后一个子目录

File newfolder3 = new File("my new folder/one/2");

renameFolder(folder2, newfolder3);//重命名失败,被重命名的文件夹在构造函数中,必须是多级目录的最后一个子目录

//必须处于同一个分区,另外如果目标的重命名文件夹已经存在,重命名操作也会失败的

File folderSrc = new File("my new folder/one/two/three");

File folderDest = new File("my new folder/one/three");

if(folderSrc.renameTo(folderDest)){

System.out.println("done");

}else {

System.out.println("fail");

}

File folder4 = new File("my new folder/one/two");//必须是空文件夹才可以删除,如果包含了其他文件或文件夹,那么删除失败

if(folder4.delete()){

System.out.println("done");

}else {

System.out.println("delete fail");

}

}

//创建单个目录,文件夹如果已经存在的话则会报错,创建失败.

private static void mkdirDemo(File folder) {

if(folder.mkdir()){

System.out.println("文件夹创建完成");

}else{

if(folder.exists()){

System.out.println("文件夹已经存在不用创建.");

}else {

System.out.println("文件夹创建失败");

}

}

/**

* 创建多级目录,当然参数如果是一级目录,就只会创建一级目录

* 文件夹如果已经存在的话也不会报错,已经存在的话就不创建

* @param folder2

*/

private static void mkdirsDemo(File folder2) {

if(folder2.mkdirs()){

System.out.println("文件夹创建完成!");

}

}

/**

* 重命名文件夹

* @param srcFolder

* @param destFolder

*/

private static void renameFolder(File srcFolder, File destFolder) {

if(srcFolder.renameTo(destFolder)){

System.out.println("重命名完成");

}else {

System.out.println("重命名失败");

}

}

三、读取文件的属性

File file = new File("text.txt");

//判断文件是否存在

System.out.println(file.exists());

//读取文件名称,只跟构造函数中的名称有关,和文件是否存在无关

System.out.println(file.getName());

//读取文件路径,相对路径

System.out.println(file.getPath());

//读取文件路径,绝对路径,从磁盘的根目录开始算的

System.out.println(file.getAbsolutePath());

//读取文件的父级路径

System.out.println(file.getParent());//结果为null,因为file对应的路径是text.txt(构造函数).

System.out.println(new File(file.getAbsolutePath()).getParent());

//读取文件的大小,单位是字节

System.out.println(file.length()/1000 + "KB");//硬盘上单位进制是1000而不是1024

//判断文件是否是隐藏文件

//在linux下,以点开头的文件就是隐藏文件,在windows下,右键设定文件的隐藏属性

System.out.println(file.isHidden());

//判断文件是否可读

System.out.println(file.canRead());

//判断文件是否可写

System.out.println(file.canWrite());

//判断文件是否是文件夹

System.out.println(file.isDirectory());

四、设置文件的属性

//将文件设置为可写

file.setWritable(true);

//将文件设置为不可写

file.setWritable(false);

//将文件设置为可读

file.setReadable(true);

//将文件设置成不可读不可写

file.setReadable(false);

file.setWritable(false);

//将文件设置为只读

file.setReadOnly();

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java可以使用URL和URLConnection类从网络上下载文件,也可以使用Java IO类从本地文件系统中读取文件并进行下载。下面是从本地下载PDF文件的示例代码: ```java import java.io.BufferedInputStream; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import java.net.URL; import java.net.URLConnection; public class DownloadPDFFile { public static void main(String[] args) { try { // 指定要下载的PDF文件的URL和存储路径 String fileUrl = "file:///C:/Users/username/Documents/example.pdf"; String savePath = "C:/Users/username/Downloads/example.pdf"; // 创建URL对象 URL url = new URL(fileUrl); // 打开连接 URLConnection conn = url.openConnection(); // 获取输入流 InputStream in = conn.getInputStream(); BufferedInputStream bis = new BufferedInputStream(in); // 创建文件 File file = new File(savePath); if (!file.exists()) { file.createNewFile(); } // 输出流 FileOutputStream fos = new FileOutputStream(file); byte[] buffer = new byte[1024]; int len; while ((len = bis.read(buffer)) != -1) { fos.write(buffer, 0, len); } // 关闭流 fos.close(); bis.close(); in.close(); System.out.println("文件下载完成!"); } catch (Exception e) { e.printStackTrace(); } } } ``` 在代码中,首先指定要下载的PDF文件的URL和存储路径。然后通过URL对象和URLConnection对象打开连接,并获取输入流。接着创建File对象和输出流,将输入流中的数据入到文件中。最后关闭流即可完成文件下载。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值