Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5543036
  • 博文数量: 763
  • 博客积分: 12108
  • 博客等级: 上将
  • 技术积分: 15717
  • 用 户 组: 普通用户
  • 注册时间: 2007-09-28 21:21
个人简介

业精于勤,荒于嬉

文章分类

全部博文(763)

文章存档

2018年(6)

2017年(15)

2016年(2)

2015年(31)

2014年(14)

2013年(87)

2012年(75)

2011年(94)

2010年(190)

2009年(38)

2008年(183)

2007年(28)

分类: Java

2008-06-20 14:38:33

package common.fileOperate;

import java.io.*;

public class FileRw {
 public FileRw() {
 }

 /**
  * 读取文件filePath中一行的数据,并返回这个数据
  *
  * @param filePath
  * @return
  * @throws FileNotFoundException
  */
 public String ReadFileOneLine(String filePath) throws FileNotFoundException {
  String currentRecord = null;// 保存文本的变量
  // 创建新的BufferedReader对象
  BufferedReader file = new BufferedReader(new FileReader(filePath));
  String returnStr = null;
  try {
   // 读取一行数据并保存到currentRecord变量中
   currentRecord = file.readLine();
  } catch (IOException e) {// 错误处理
   System.out.println("读取数据错误.");
  }
  if (currentRecord == null)
   // 如果文件为空
   returnStr = "没有任何记录";
  else {// 文件不为空
   returnStr = currentRecord;
  }
  // 返回读取文件的数据
  return returnStr;
 }

 /**
  * 读取文件中的所有内容
  *
  * @param filePath
  * @return
  * @throws FileNotFoundException
  */
 public String ReadFile(String filePath) throws Exception {

  //String picturefolderurl=readpro.prop.getProperty("picturefolderurl");

  File file = new File(filePath);
  BufferedReader reader = null;
  String laststr = "";
  try {
   System.out.println("以行为单位读取文件内容,一次读一整行:");
   reader = new BufferedReader(new FileReader(file));
   String tempString = null;
   int line = 1;
   //一次读入一行,直到读入null为文件结束
   while ((tempString = reader.readLine()) != null) {
    //显示行号
    System.out.println("line " + line + ": " + tempString);
    laststr = laststr + tempString;
    line++;
   }
   reader.close();
  } catch (IOException e) {
   e.printStackTrace();
  } finally {
   if (reader != null) {
    try {
     reader.close();
    } catch (IOException e1) {
    }
   }
  }
  return laststr;
 }

 /**
  * 写文件操作 写为一行
  *
  * @param filePath
  *            文件路径
  * @param tempcon
  *            写入的内容
  * @throws FileNotFoundException
  */
 public void WriteFile(String filePath, String tempcon)
   throws FileNotFoundException {
  try {
   // 创建PrintWriter对象,用于写入数据到文件中
   PrintWriter pw = new PrintWriter(new FileOutputStream(filePath));
   // 用文本格式打印整数Writestr
   pw.println(tempcon);
   // 清除PrintWriter对象
   pw.close();
  } catch (IOException e) {
   // 错误处理
   System.out.println("写入文件错误" + e.getMessage());
  }
 }

 /**
  * 文件的写入 将要分行的数组以数组的形式传入
  *
  * @param filePath(文件路径)
  * @param fileName(文件名)
  * @param args[]
  * @throws IOException
  */
 public void writeFile(String filePath, String[] args) throws IOException {
  FileWriter fw = new FileWriter(filePath);
  PrintWriter out = new PrintWriter(fw);
  for (int i = 0; i < args.length; i++) {
   out.write(args[i]);
   out.println();

  }
  fw.close();
  out.close();
 }

 /**
  * 判断文件是否存在
  *
  * @return
  */
 public boolean IsFileExists(String filePath) {

  File f = new File(filePath);

  if (f.exists()) {// 检查File.txt是否存在
   return true;
  } else {
   return false;
  }

 }

 /**
  * 创建新文件
  *
  * @param filePath
  * @return
  */
 public boolean CreateFile(String filePath) {
  boolean flag = true;
  File f = new File(filePath);

  if (f.exists()) {// 检查File.txt是否存在
   f.delete();
   try {
    f.createNewFile();
   } catch (IOException e) {
    flag = false;
   }
  } else {
   try {
    f.createNewFile();
   } catch (IOException e) {
    flag = false;
   }

  }
  return false;

 }

 /**
  * 把要写入的字符串写到文件里面
  * @param str 要写入的内容
  * @param destFilePath 目标文件地址
  * @throws Exception
  */
 public static void writefilewithmqhxhtm(String str, String destFilePath)
   throws Exception {
  File temp = new File(destFilePath);
  DataOutputStream outs = new DataOutputStream(new FileOutputStream(temp));
  outs.write(str.getBytes());
  outs.close();

 }

 /* 下面这一般你可以用来测试java应用程序来读取文件,将前面的"//"去掉后你可以运行:java FileRw 来测试。 */
 public static void main(String args[]) throws Exception {
  FileRw fm = new FileRw();
  String filepath = "c:/test.txt";
  System.out.println(fm.IsFileExists(filepath));
  System.out.println(fm.ReadFile(filepath));
  if (!fm.IsFileExists(filepath)) {
   fm.CreateFile(filepath);
   // fm.WriteFile(filepath, "asf");
   // System.out.println(fm.ReadFileOneLine(filepath));
   String[] str = new String[3];
   str[0] = "0=0";
   str[1] = "1=1";
   str[2] = "2=2";
   try {
    fm.writeFile(filepath, str);
   } catch (IOException e) {
    // TODO 自动生成 catch 块
    e.printStackTrace();
   }

  }
 }
}

/**
* 创建新文件
*
* @param filePath
* @return
*/
public boolean CreateFile(String filePath) {
boolean flag = true;
File f = new File(filePath);

if (f.exists()) {// 检查File.txt是否存在
f.delete();
try {
f.createNewFile();
} catch (IOException e) {
flag = false;
}
} else {
try {
f.createNewFile();
} catch (IOException e) {
flag = false;
}

}
return false;

}



  1. /** 
  2.       * 创建新文件 
  3.       */  
  4.      public boolean CreateFile(String filePath) {  
  5.          boolean flag = true;  
  6.          File f = new File(filePath);  
  7.          if (f.exists())  
  8.              f.delete();  
  9.          try {  
  10.              f.createNewFile();  
  11.          } catch (IOException e) {  
  12.              flag = false;  
  13.          }  
  14.          return flag;  
  15.      } 


阅读(1195) | 评论(0) | 转发(0) |
0

上一篇:IO流的典型应用

下一篇:经典英语句型

给主人留下些什么吧!~~