efw.csv.CSVManager Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of efw Show documentation
Show all versions of efw Show documentation
"efw" is an Ajax framework for server site JavaScript designed
and developed by Escco Co., Ltd. using a goal-oriented method.
It is provided as open source free software.
/**** efw4.X Copyright 2019 efwGrp ****/
package efw.csv;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;
import java.util.HashMap;
import java.util.Map.Entry;
import efw.framework;
import efw.file.FileManager;
/**
* CSV作成を管理するクラス。
* @author kejun.chang
*
*/
public final class CSVManager {
/**
* 1つCSVを開く。
* @param path CSVのパス。
* @param encoding エンコード。
* @return Writterのオブジェクト。
* @throws FileNotFoundException ファイル無しエラー。
* @throws UnsupportedEncodingException エンコード不正エラー。
*/
public static PrintWriter open(String path,String encoding) throws UnsupportedEncodingException, FileNotFoundException{
PrintWriter writer;
writer = new PrintWriter(
new BufferedWriter(
new OutputStreamWriter(
new FileOutputStream(
FileManager.get(path),true),encoding)));
framework.setWriter(path, writer);
return writer;
}
/**
* 開いた一つのファイルを閉じる。
* @param path CSVファイルパス。
*/
public static void close(String path) {
try {
PrintWriter writer=framework.getWriter(path);
framework.removeWriter(path);
writer.close();
}catch(Exception ex) {
ex.printStackTrace();//エラーを投げない。
}
}
/**
* 該当スレッドに、開いたWritterをすべて閉じる。
*/
public static void closeAll(){
if(framework.getWriters()==null) return;
HashMap map=framework.getWriters();
for(Entry e : map.entrySet()) {
PrintWriter writer=e.getValue();
try{
writer.close();//2回閉じても大丈夫。
}catch(Exception ex){
ex.printStackTrace();//エラーを投げない。
}
}
framework.removeWriters();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy