package edu.basejava.util;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class CharFileIO
{
public static String readTxtFile(Object... args)
{
File file = null;
String encoding = "UTF-8";
BufferedReader br;
StringBuffer strBuff = new StringBuffer();
if (args.length > 0)
file = new File( (String) args[0]);
else
{
Log.error("至少输入文件路径");
return null;
}
if (args.length > 1)
encoding = (String) args[1];
try
{
br = new BufferedReader(new InputStreamReader(new FileInputStream(
file), encoding));
char[] cbuf = new char[1024];
while ( br.read(cbuf) != -1)
{
strBuff.append(cbuf);
}
} catch (FileNotFoundException e)
{
e.printStackTrace();
} catch (IOException e)
{
e.printStackTrace();
}
return strBuff.toString();
}
public static void writeTxtFile(Object... args)
{
String data = null;
File file = null;
String encoding = "UTF-8";
BufferedWriter bw;
if (args.length > 1)
{
data = (String) args[0];
file = new File( (String) args[1]);
}
else
{
Log.error("至少输入字符串内容和文件路径");
return;
}
if (args.length > 2)
encoding = (String) args[2];
try
{
bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(
file), encoding));
bw.write(data);
//bw.flush();
bw.close();
} catch (FileNotFoundException e)
{
e.printStackTrace();
} catch (IOException e)
{
e.printStackTrace();
}
}
public static long getFileSize(String file) {
File f = new File(file);
return f.length();
}
}