对文件进行操作在编程中比较少用,但是我最近有一个任务需要用到对文件操作。

  对文件有如下操作形式:

  1.创建新的文件(夹)

    File fileName = new File("C:/myfile.txt");

    fileName.createNewFile(); //创建文件

    File fileName = new File("C:/myfile");

    fileName.mkdir(); //创建文件夹

  2.对比两个文件路径

    fileName.compareTo(anotherFileName);

  3.获取文件的最后修改日期

    fileName.lastModified(); //返回类型是long

  4.在指定目录下创建文件

    File file = null;

    File dir = new File("C:/"):

    file = File.creatTempFile("javeTemp",".javatemp",dir);

    file.getPath(); //获取文件路径

  5.判断文件是否存在

    file.exists();

  6.设置文件只读与可写

    file.setReadOnly(); //只读

    file.setWrite(); //可写

  7.文件重命名

    File oldName = new File("C:/program.txt");

    File newName = new File("C:/java.txt");

    oldName.renameTo(newName);

  8.文件大小

    file.exists(); //是否存在

    file.isFile(); //是否是文件

    file.length(); //获取文件大小

  9.改变文件最后修改时间

    file.setLastModified( System.currentTimeMills());

  10.创建临时文件

    File temp = File.createTempFile( "pattern", ".suffix");

    temp.deleteOnExit();

    BufferedWriter out = new BufferedWriter( new FileWriter( temp));

    out.write( "aString");

  11.在现有文件最后添加字符串

    BufferedWriter out = new BufferedWriter( new FileWriter( "fileName"));

    out.write( "aString1");

    out.close();

    out = new BufferedWriter( new FileWriter( "fileName"; true));

    out.writer();

    out.close();

  12.复制文件

    BufferedWriter out1 = new BufferedWriter( new FileWriter( "srcFile"));

    out1.write( "String to be copied");

    out1.close();

    InputStream in = new FileInputStream( new File( "srcFile"));

    OutputStream out = new OutputStream( new File( "destnFile"));

    byte[] buf = new byte[1024];

    int len = 0;

    while( ( len = in.read( buf)) > 0){

      out.write( buf, 0, len);

    }

    in.close();

    out.close();

  13.删除文件

    file.delete(); //返回类型是boolean

  14.读取文件

    BufferedReader in = new BufferedReader( new FileReader( "C:/fileName"));

    String str = "":

    while( ( str = in.readLine()) != null){

      System.out.println( str);

    }

  15.写入文件

    BufferedWriter out = new BufferedWriter( new FileWriter( "outFileName"));

    out.write( "aString");

    out.close();  //一定要记得关闭,一定要管关

原文:http://www.yiibai.com/javaexamples/java_files.html

Java基础知识系列——文件操作的更多相关文章

  1. Java基础知识之文件操作

    流与文件的操作在编程中经常遇到,与C语言只有单一类型File*即可工作良好不同,Java拥有一个包含各种流类型的流家族,其数量超过60个!当然我们没必要去记住这60多个类或接口以及它们的层次结构,理解 ...

  2. Java基础知识系列——目录操作

    Java对目录操作的许多方法与上一篇文件操作的方法很多是一样的. java.io.File file = new File( "D:\1\2\3\4"); 1.递归创建目录 fil ...

  3. Java基础知识系列——String

    最近晚上没有什么事(主要是不加班有单身),就复习了一下Java的基础知识.我复习Java基础知识主要是依据Java API和The Java™ Tutorials. 今天是第一篇,复习了一下Strin ...

  4. golang基础知识之文件操作

    读取文件所有内容以及获得文件操作对象 package mainimport ( "bufio" "fmt" "io" "io/io ...

  5. Python基础知识(八)----文件操作

    文件操作 一丶文件操作初识 ###f=open('文件名','模式',编码): #open() # 调用操作系统打开文件 #mode #对文件的操作方式 #encoding # 文件的编码格式 存储编 ...

  6. python基础知识-day7(文件操作)

    1.文件IO操作: 1)操作文件使用的函数是open() 2)操作文件的模式: a.r:读取文件 b.w:往文件里边写内容(先删除文件里边已有的内容) c.a:是追加(在文件基础上写入新的内容) d. ...

  7. Java基础知识系列——Exception

    异常在编程中使用频率非常非常的高,在Java中异常的基类是Exception. 下面就介绍一下Java中的异常: 1.结构 try{ //捕获try里的异常 }catch( Exception e){ ...

  8. Java基础知识系列——日期

    日期类型也是在编程中经常用到的一种数据类型. Java中的日期类型为Date. 另外需要记住三个类: java.text.SimpleDateFormat; java.util.Calendar; j ...

  9. Java基础知识系列——数组

    数组是我们在编程中常用到的一种数据结构. 数组创建有三种方式,以int类型为例: 1.int value[] = new int[]{1,2,3,4,5}; //{}中的是元素 2.int value ...

随机推荐

  1. flash builder4.7 for Mac升级AIRSDK详解

    使用flash builder 打包ANE时或者打包ipa时候常常会遇到AIRSDK版本低的问题,然而flash builder4.7默认使用的AIRSDK是3.4而flash builder4.7 ...

  2. View Controller Relationships

    Parent-child relationshipsParent-child relationships are formed when using view controller container ...

  3. delphi.位操作

    位操作网上有很多介绍,请上网google/baidu,比如: 位操作技巧实例大全: http://blog.csdn.net/g_spider/article/details/5750665 位操作基 ...

  4. 初学android之简易的网易页面

    WangYiActivity.java: public class WangYiActivity extends Activity implements OnClickListener{ public ...

  5. pthread 学习

    1. 创建线程 int pthread_create (pthread_t* thread, pthread_attr_t* attr, void* (*start_routine)(void*), ...

  6. border:none;与border:0;的区别

    border:none表示边框样式无,border:0表示边框宽度为0;当定义了border:none,即隐藏了边框的显示,实际就是边框宽度为0. 当定义边框时,必须定义边框的显示样式.因为边框默认样 ...

  7. [转载]SVN-主干/分支

    一个大项目在开发中可能会拆分成几个小项目,分别分去,同时共通的部分再由人做,做完后再统一合并.同时,在开发中,共通的部分修改后,其它人要保持同步. 这种情况反应到SVN的分支/合并功能上,再贴切不过了 ...

  8. 时间序列分析之ARIMA模型预测__R篇

    http://www.cnblogs.com/bicoffee/p/3838049.html

  9. python读取excel数据,并可视化展现

    #-*- coding: utf-8 -*- import pandas as pda import matplotlib.pyplot as pyl import matplotlib.font_m ...

  10. springMVC:通配符的匹配很全面, 但无法找到元素 'mvc:annotation-driven' 的声明

    转自:http://blog.csdn.net/tolcf/article/details/50845483 报错信息:通配符的匹配很全面, 但无法找到元素 'mvc:annotation-drive ...