Java讀寫文件和Scala讀寫文件

Java實現

package com.xtd.test.java;

import java.io.*;

public class AppentFile {

    private static FileWriter fileWriter = null;
    private static FileReader fileReader = null;
    private static BufferedWriter bufferedWriter = null;
    private static BufferedReader bufferedReader = null;

    public static void main(String[] args) {
        // 寫入文件的路徑
        String filePath = "F:/IDEA-WorkSpace/spark";
        // 寫入的文件名稱
        String fileName = "MMSIFile";
        readAndWrite(filePath,fileName);
    }
    public static void readAndWrite(String filePath,String fileName){

        try {
            /************** 寫文件 ************/
            // true:追加寫入,flase:覆蓋寫入(默認覆蓋寫入)
            fileWriter = new FileWriter(filePath+"/"+fileName,true);
            // 對於小量數據少數寫入使用 fileWriter 效率更高
            fileWriter.append("Java FileWriter Apend Write File!\n");
            // 對於大量數據對此寫入使用 bufferedWriter 效率更高
            bufferedWriter = new BufferedWriter(fileWriter);
            bufferedWriter.write("Java BufferedWriter Apend Write File!\n");
            bufferedWriter.close();
            fileWriter.close();

            /************** 讀文件 ************/
            fileReader = new FileReader(filePath+"/"+fileName);
            bufferedReader = new BufferedReader(fileReader);
            String str;
            while ( null != (str = bufferedReader.readLine()) ) {
                System.out.println(str);
            }
            bufferedReader.close();
            fileReader.close();
        }
        catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Scala實現

package com.xtd.test.scala

import java.io.{BufferedReader, BufferedWriter, FileReader, FileWriter, IOException}

object AppentFile {

  private var fileWriter:FileWriter = null
  private var fileReader:FileReader = null
  private var bufferedWriter:BufferedWriter = null
  private var bufferedReader:BufferedReader = null

  def main(args: Array[String]): Unit = {
    // 寫入文件的路徑
    val filePath = "F:/IDEA-WorkSpace/spark"
    // 寫入的文件名稱
    val fileName = "MMSIFile"
    readAndWrite(filePath, fileName)
  }

  def readAndWrite(filePath: String, fileName: String): Unit = {
    try {
      /** ************ 寫文件 ************/
      // true:追加寫入,flase:覆蓋寫入(默認覆蓋寫入)
      fileWriter = new FileWriter(filePath + "/" + fileName, true)
      // 對於小量數據少數寫入使用 fileWriter 效率更高
      fileWriter.append("Scala FileWriter Apend Write File!\n")
      // 對於大量數據對此寫入使用 bufferedWriter 效率更高
      bufferedWriter = new BufferedWriter(fileWriter)
      bufferedWriter.write("Scala BufferedWriter Apend Write File!\n")
      bufferedWriter.close()
      fileWriter.close()

      /** ************ 讀文件 ************/
      fileReader = new FileReader(filePath + "/" + fileName)
      bufferedReader = new BufferedReader(fileReader)
      var str:String = null
      while ( None!=(str = bufferedReader.readLine) && null!=str ) println(str)
      bufferedReader.close()
      fileReader.close()
    } catch {
      case e: IOException =>
        e.printStackTrace()
    }
  }
}

運行效果

Java FileWriter Apend Write File!
Java BufferedWriter Apend Write File!
Scala FileWriter Apend Write File!
Scala BufferedWriter Apend Write File!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章