定义一个servlet
public class Attribute extends HttpServlet {
private static String DebugFile; //调试文件接口
private static String RootPath; //tomcat的ROOT绝对路径
private static String LocalSystem; //本地操作系统
public void init() throws ServletException{
try {
LocalSystem = this.getInitParameter("LocalSystem");
DebugFile = this.getInitParameter("DebugFile");
RootPath = this.getServletContext().getRealPath("/");
XMC_DebugFile DebugObj = new XMC_DebugFile(LocalSystem, DebugFile);
XMC_DebugFile.println("LocalSystem:"+LocalSystem);
XMC_DebugFile.println("RootPath:="+RootPath);
//new XMC_SipThread().start();
} catch (Exception e) {
return;
}
}
public void destroy() {
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
public static String getRootPath(){
return RootPath;
}
}
定义打印类
import java.io.*;
/*
* 文件打印
*/
public class DebugFile {
private static String path;
private static String fileName;
private static FileWriter fw = null;
private static int isDebug = 0;
public DebugFile(String LocalSystem, String DebugFile){
try{
path = XMC_Attribute.getRootPath();
if(LocalSystem.equals("window"))path += "//";
else if(LocalSystem.equals("linux"))path += "/";
if(DebugFile.equals("yes"))isDebug=1;
else if(DebugFile.equals("no"))isDebug=0;
fileName = "Debug.log";
if(isDebug==1){
NewFile(path,fileName);
fw = new FileWriter(path+fileName);
}
}catch(Exception e){
e.printStackTrace();
}
}
public static void close(){
try{
if(isDebug==1){
fw.close();
}
}catch(Exception e){
e.printStackTrace();
}
}
public static void println(String inPutString){
try{
if(isDebug==1){
fw.write(inPutString+"/n");
fw.flush();
}
}catch(Exception e){
e.printStackTrace();
}
}
public static void print(String inPutString) throws IOException{
try{
if(isDebug==1){
fw.write(inPutString);
fw.flush();
}
}catch(Exception e){
e.printStackTrace();
}
}
/**
* 创建文件,如果原来已存在即把原来的删除再创建
* @param filePath
* @param fileName
* @return 创建成功返回true
* @throws IOException
*/
public boolean NewFile(String filePath,String fileName)
throws IOException
{
boolean result = false;
File file = new File(filePath,fileName);
if(file.exists())
{
file.delete();
result = true;
System.out.println("文件已经删除!");
}
file.createNewFile();
result = true;
System.out.println("文件已经创建!");
return result;
}
/**
* 创建目录,如果存在即什么也不做
* @param folderName
* @param filePath
* @return 成功返回true
*/
public boolean createFolder(String folderName,String filePath)
{
boolean result = false;
try
{
File file = new File(filePath+folderName);
if(file.exists())
{
//file.delete();
// System.out.println("目录已经存在,已删除!");
result = true;
}
else
{
file.mkdir();
System.out.println("目录不存在,已经建立!");
result = true;
}
}
catch(Exception ex)
{
result = false;
System.out.println("CreateAndDeleteFolder is error:"+ex);
}
return result;
}
/**
* 文件的写入
* @param filePath(文件路径)
* @param fileName(文件名)
* @param args
* @throws IOException
*/
public void writeFile(String filePath,String fileName,String args)
throws IOException
{
FileWriter fw = new FileWriter(filePath+fileName);
fw.write(args);
fw.close();
}
/**
* 文件的写入
* @param filePath(文件路径)
* @param fileName(文件名)
* @param args[]
* @throws IOException
*/
public void writeFile(String filePath,String fileName,String[] args)
throws IOException
{
FileWriter fw = new FileWriter(filePath+fileName);
PrintWriter out=new PrintWriter(fw);
for(int i=0;i<args.length;i++)
{
out.write(args[i]);
out.println();
out.flush();
}
fw.close();
out.close();
}
/**
* 输出目录中的所有文件及目录名字
* @param filePath
*/
public void readFolderByFile(String filePath)
{
File file = new File(filePath);
File[] tempFile = file.listFiles();
for(int i = 0;i<tempFile.length;i++)
{
if(tempFile[i].isFile())
{
System.out.println("File : "+tempFile[i].getName());
}
if(tempFile[i].isDirectory())
{
System.out.println("Directory : "+tempFile[i].getName());
}
}
}
/**
* 检查文件中是否为一个空
* @param filePath
* @param fileName
* @return 为空返回true
* @throws IOException
*/
public boolean fileIsNull(String filePath,String fileName) throws
IOException
{
boolean result = false;
FileReader fr = new FileReader(filePath+fileName);
if(fr.read() == -1)
{
result = true;
System.out.println(fileName+" 文件中没有数据!");
}
else
{
System.out.println(fileName+" 文件中有数据!");
}
fr.close();
return result;
}
/**
* 读取文件中的所有内容
* @param filePath
* @param fileName
* @throws IOException
*/
public void readAllFile(String filePath,String fileName) throws
IOException
{
FileReader fr = new FileReader(filePath+fileName);
int count = fr.read();
while(count != -1)
{
System.out.print((char)count);
count = fr.read();
if(count == 13)
{
fr.skip(1);
}
}
fr.close();
}
/**
* 一行一行的读取文件中的数据
* @param filePath
* @param fileName
* @throws IOException
*/
public void readLineFile(String filePath,String fileName) throws
IOException
{
FileReader fr = new FileReader(filePath+fileName);
BufferedReader br = new BufferedReader(fr);
String line = br.readLine();
while(line != null)
{
System.out.println(line);
line = br.readLine();
}
br.close();
fr.close();
}
}