以下のプレビューを確認して、よければページ下部のボタンで更新してください。

Java用につくられたExcelのWorkbookクラスを、そのままでも使えますが、 SCALAの特徴を生かしたobjectをつくります、ファイル名をWorkbookScala?.scala とでもしましょうか。

  • WorkbookScala?.scala
    import java.io.File
    import java.io.IOException
    import jxl.Workbook
    import jxl.read.biff.BiffException
    import scala.util.DynamicVariable
    
    object WorkbookScala{
     val dynamicvariable= new DynamicVariable[Workbook](null)
     //自動的にcloseするopen
     def open (path:String)(block : => Unit){
          var excelFile = new File(path)
          var workbook = Workbook.getWorkbook(excelFile)
    	   try {
    	     dynamicvariable.withValue(workbook){block}
    	   } finally {
    		 workbook.close();  
    	   }
     }
     //自動的に設定されるブロック変数のようなもの
     def $_()={
       dynamicvariable.value
     }
    }

タイムスタンプを変更しない
トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS