能够访问文件名,但是不能重命名文件,也不能创建新文件
File f = new File(" F:\workspace\IOtest\t.txt");
System.out.println(f.getName()); //获取文件名
//System.out.println(f.getPath()); //获取文件路径,在创建文件对象是使用的是绝对路径,获取的就是绝对路径,反之就是相对路径
System.out.println(f.renameTo(new File(" F:\\workspace\\IOtest\\t2.txt"))); //参数为File对象
System.out.println(f.getName()); //获取重命名之后的文件名
File f4 = new File(" F:\workspace\IOtest\t2.txt");
if(!f4.exists()){
try {
f4.createNewFile();
} catch (IOException e) {
throw new RuntimeException(e);
}
}
上面还是有转义字符的 这里怎么没了
File f = new File(" F:\workspace\IOtest\t.txt");
这行的路径不对,要么是 \ 双斜杠,要么是 / 单斜杠
双右斜杠是 windows 的奇葩写法,左单斜杠是 unix和Linux的写法,无论你选择哪一种,代码会帮你适配当前系统
public static void main(String[] args) {
//获取文件对象
File f = new File(" F:/workspace/IOtest/t.txt");
System.out.println(f.getName()); //获取文件名
//System.out.println(f.getPath()); //获取文件路径,在创建文件对象是使用的是绝对路径,获取的就是绝对路径,反之就是相对路径
System.out.println(f.renameTo(new File(" F:/workspace/IOtest/t2.txt"))); //参数为File对象
System.out.println(f.getName()); //获取重命名之后的文件名
File f4 = new File(" F:/workspace/IOtest/t2.txt");
if(!f4.exists()){
try {
f4.createNewFile();
} catch (IOException e) {
throw new RuntimeException(e);
}
}
我的代码里是双斜杠的,只是复制过来的时候自动变成单斜杠了,改成反斜杠还是一样