(转)java中对于文件属性的一些操作

1.当Java.io中,如果文件的操作的时候,判断是否隐藏用File.ishiden()

判断是否只读,可用File.canWrite().

2.当要设置是否是可读或者是隐藏时,在java中除了提供File.setReadOnly()外,就无其他方法了。


所以我们必须到Dos环境下去设置,在java中用Runtime.getRuntime().exec("attrib " + """ + file.getAbsolutePath() + """+ " +R")该方法可以实现。因为路径file.getAbsolutePath()中可能会还有空格,所以必须用引号把它括起来,当作一个参数。这样就可以实现了


(1) 设置只读Runtime.getRuntime().exec("attrib " + """ + file.getAbsolutePath() + """+ " +R");


(2) 设置可写Runtime.getRuntime().exec("attrib " + """ + file.getAbsolutePath() + """+ " -R");

(3) 设置隐藏Runtime.getRuntime().exec("attrib " + """ + file.getAbsolutePath() + """+ " +H");


(4) 设置非隐藏Runtime.getRuntime().exec("attrib " + """ + file.getAbsolutePath() + """+ " -H");



3.对于读写文件的一些操作源代码


package fileControl;

import java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.File;

import java.io.FileReader;

import java.io.FileWriter;

import java.io.IOException;

import java.io.RandomAccessFile;

public class FileControl {


private static String fileName;

private static File file;


public static void main(String[] args) {


try {

fileName = "exercise.java";

file = new File("E:" + "", fileName);

if (file.exists()) {


// file.delete();


} else {

file.createNewFile();

}


if (file.isDirectory()) {

System.out.println("this file is directory");

}


if (file.isFile()) {

System.out.println("this file is a file");

}


FileWriter fw = new FileWriter("E:" + "" + fileName);


// 缓冲写入文件,并且可以通过转义符或是bw.newLine();来换行

BufferedWriter bw = new BufferedWriter(fw);


// 将字符串写入文件

bw.write(" 大家好!");

bw.newLine();

bw.write("请多多指教!");

bw.newLine();

bw.write("email:stride@sina.comqianyf");

bw.flush();

bw.close();


//在文件制定位置追加内容

RandomAccessFile rf = new RandomAccessFile("E:" + "" + fileName, "rw");

rf.seek(rf.length());

rf.writeBytes(" zui jia de");

rf.close();


// 通过缓冲来读文件

FileReader fr = new FileReader("E:" + "" + fileName);

BufferedReader br = new BufferedReader(fr);

String lineData = br.readLine();

while (null != lineData) {

System.out.println(lineData);

lineData = br.readLine();

}

} catch (IOException ee) {

System.out.println("System Exception");

}

}
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值