广

Java编程

  • IOS开发
  • android开发
  • PHP编程
  • JavaScript
  • ASP.NET
  • ASP编程
  • JSP编程
  • Java编程
  • 易语言
  • Ruby编程
  • Perl编程
  • AJAX
  • 正则表达式
  • C语言
  • 编程开发

    java开发之读写txt文件操作的实现

    2018-11-14 08:49:20 次阅读 稿源:互联网
    零七广告

    项目结构:

    运行效果:

    ========================================================

    下面是代码部分:

    ========================================================

    /Text/src/com/b510/txt/MyFile.java
    代码如下:

    package com.b510.txt;

     import java.io.BufferedReader;
     import java.io.File;
     import java.io.FileInputStream;
     import java.io.FileNotFoundException;
     import java.io.FileOutputStream;
     import java.io.FileReader;
     import java.io.IOException;
     import java.io.InputStreamReader;
     import java.io.PrintWriter;

     /**
      * @author Hongten
      *
      * @time 2011-12-12 2011
      */
     public class MyFile {
         @SuppressWarnings("static-access")
         public static void main(String[] args) {
             MyFile myFile = new MyFile();
             try {
                 for (int i = 0; i < 5; i++) {
                     myFile.creatTxtFile("test");
                     myFile.writeTxtFile("显示的是追加的信息" + i);
                     String str = myFile.readDate();
                     System.out.println("*********/n" + str);
                 }
             } catch (IOException e) {
                 // TODO Auto-generated catch block
                 e.printStackTrace();
             }
         }

         private static String path = "txt/";
         private static String filenameTemp;

         /**
          * 创建文件
          *
          * @throws IOException
          */
         public static boolean creatTxtFile(String name) throws IOException {
             boolean flag = false;
             filenameTemp = path + name + ".txt";
             File filename = new File(filenameTemp);
             if (!filename.exists()) {
                 filename.createNewFile();
                 flag = true;
             }
             return flag;
         }

         /**
          * 写文件
          *
          * @param newStr
          *            新内容
          * @throws IOException
          */
         public static boolean writeTxtFile(String newStr) throws IOException {
             // 先读取原有文件内容,然后进行写入操作
             boolean flag = false;
             String filein = newStr + "/r/n";
             String temp = "";

             FileInputStream fis = null;
             InputStreamReader isr = null;
             BufferedReader br = null;

             FileOutputStream fos = null;
             PrintWriter pw = null;
             try {
                 // 文件路径
                 File file = new File(filenameTemp);
                 // 将文件读入输入流
                 fis = new FileInputStream(file);
                 isr = new InputStreamReader(fis);
                 br = new BufferedReader(isr);
                 StringBuffer buf = new StringBuffer();

                 // 保存该文件原有的内容
                 for (int j = 1; (temp = br.readLine()) != null; j++) {
                     buf = buf.append(temp);
                     // System.getProperty("line.separator")
                     // 行与行之间的分隔符 相当于“/n”
                     buf = buf.append(System.getProperty("line.separator"));
                 }
                 buf.append(filein);

                 fos = new FileOutputStream(file);
                 pw = new PrintWriter(fos);
                 pw.write(buf.toString().toCharArray());
                 pw.flush();
                 flag = true;
             } catch (IOException e1) {
                 // TODO 自动生成 catch 块
                 throw e1;
             } finally {
                 if (pw != null) {
                     pw.close();
                 }
                 if (fos != null) {
                     fos.close();
                 }
                 if (br != null) {
                     br.close();
                 }
                 if (isr != null) {
                     isr.close();
                 }
                 if (fis != null) {
                     fis.close();
                 }
             }
             return flag;
         }

         /**
          * 读取数据
          */
         public void readData1() {
             try {
                 FileReader read = new FileReader(filenameTemp);
                 BufferedReader br = new BufferedReader(read);
                 String row;
                 while ((row = br.readLine()) != null) {
                     System.out.println(row);
                 }
             } catch (FileNotFoundException e) {
                 e.printStackTrace();
             } catch (IOException e) {
                 e.printStackTrace();
             }
         }

         public String readDate() {
             // 定义一个待返回的空字符串
             String strs = "";
             try {
                 FileReader read = new FileReader(new File(filenameTemp));
                 StringBuffer sb = new StringBuffer();
                 char ch[] = new char[1024];
                 int d = read.read(ch);
                 while (d != -1) {
                     String str = new String(ch, 0, d);
                     sb.append(str);
                     d = read.read(ch);
                 }
                 System.out.print(sb.toString());
                 String a = sb.toString().replaceAll("@@@@@", ",");
                 strs = a.substring(0, a.length() - 1);
             } catch (FileNotFoundException e) {
                 e.printStackTrace();
             } catch (IOException e) {
                 e.printStackTrace();
             }
             return strs;
         }
     }

    零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。

    零七广告
    零七广告
    零七广告
    零七广告