zoukankan      html  css  js  c++  java
  • java文件读写操作类

    借鉴了项目以前的文件写入功能,实现了对文件读写操作的封装

    仅仅需要在读写方法传入路径即可(可以是绝对或相对路径)

    以后使用时,可以在此基础上改进,比如:

    写操作:

    1,对java GUI中文本框中的内容进行捕获,放在txt文本文档中

    2,对各种类型数据都以字符串的形式逐行写入

    3,对全局数组的内容进行写入

    读操作:

    获取文件行数

    对逐行字符串型数据进行类型转换,放入二维数组中

    为后面算法处理提供入口,但是要小心的是:不可以将行数用全局变量做计数器,否则每次读入是全局变量累加出错,应重新开始读取

     1 import  java.io.BufferedReader;  
     2 import  java.io.BufferedWriter;  
     3 import  java.io.File;  
     4 import  java.io.FileReader;  
     5 import  java.io.FileWriter;  
     6 import  java.io.IOException;
     7   
     8 public  class  ReadTextFile {  
     9     public  BufferedReader bufread;  
    10     public  BufferedWriter bufwriter;  
    11     File writefile;  
    12     String filepath, filecontent, read;  
    13     String readContent  =  "" ;  
    14     // 从文本文件中读取内容   
    15      public  String readfile(String path)     
    16       {  
    17          try    {  
    18            filepath  =  path;  // 得到文本文件的路径   
    19             File file  =   new  File(filepath);  
    20            FileReader fileread  =   new  FileReader(file);  
    21            bufread  =   new  BufferedReader(fileread);  
    22              while  ((read  =  bufread.readLine())  !=   null )   {  
    23                read  =  read + " 
     " ;        //读取的每一行都加了换行符      
    24                readContent  =  readContent  +  read;  
    25            }   
    26         }   catch  (Exception d)   {  
    27            System.out.println(d.getMessage());  
    28        }   
    29         return  readContent;  // 返回从文本文件中读取内容   
    30     }   
    31     public void writeFile(String path)   {
    32         
    33         try {
    34             BufferedWriter writer = new BufferedWriter(new FileWriter(path)); // 如果文本文件不存在则创建它
    35             for(int i=0;i<256;i++){
    36                 for(int j=0;j<7;j++){
    37                     
    38                     writer.write(Math.random()+"    ");
    39                 }
    40                writer.newLine();
    41             }
    42              //使用缓冲区中的方法,将数据刷新到目的地文件中去。
    43              writer.flush();
    44              //关闭缓冲区,同时关闭了writer流对象  
    45              writer.close();
    46           }catch (IOException e) {
    47          // TODO Auto-generated catch block
    48             e.printStackTrace();
    49           }
    50     }
    51     
    52    
    53      
    54      public   static   void  main(String[] args)  throws  Exception   {  
    55        ReadTextFile parse  =   new  ReadTextFile();  
    56        // 写文件
    57        parse.writeFile( "D:/radar.txt"); 
    58        //读文件(主要实现将整个文本读取出来,或读取文件函数返回字符串类型,或将每一行读取后放入全局字符串数组中)
    59        String filecontent  =  parse.readfile( "D:/radar.txt" );     
    60        
    61        System.out.println(filecontent);
    62        
    63    
    64     }   
    65 }

    当然,也可以将读写的路径用一个全局静态变量字符串来保存,只是不利于分离使用,故此处省略。

  • 相关阅读:
    python中的编码问题
    CVPR2018 Tutorial 之 Visual Recognition and Beyond
    hdu 1376 Octal Fractions
    hdu 1329 Hanoi Tower Troubles Again!
    hdu 1309 Loansome Car Buyer
    hdu 1333 Smith Numbers
    hdu 1288 Hat's Tea
    hdu 1284 钱币兑换问题
    hdu 1275 两车追及或相遇问题
    hdu 1270 小希的数表
  • 原文地址:https://www.cnblogs.com/shuqingstudy/p/5043485.html
Copyright © 2011-2022 走看看