您的位置:首页 > 编程语言 > Java开发

java 获取当前函数名

2012-10-12 13:26 330 查看
import java.text.SimpleDateFormat;

import java.util.Date;

/**

* Java实现类似C/C++中的__FILE__、__FUNC__、__LINE__等,主要用于日志等功能中。

*

* @version 1.0 2011-07-13

*

*/

public abstract class CommonFunction {

/**

* 打印日志时获取当前的程序文件名、行号、方法名 输出格式为:[FileName | LineNumber | MethodName]

*

* @return

*/

public static String getFileLineMethod() {

StackTraceElement traceElement = ((new Exception()).getStackTrace())[1];

StringBuffer toStringBuffer = new StringBuffer("[").append(

traceElement.getFileName()).append(" | ").append(

traceElement.getLineNumber()).append(" | ").append(

traceElement.getMethodName()).append("]");

return toStringBuffer.toString();

}

// 当前文件名

public static String _FILE_() {

StackTraceElement traceElement = ((new Exception()).getStackTrace())[1];

return traceElement.getFileName();

}

// 当前方法名

public static String _FUNC_() {

StackTraceElement traceElement = ((new Exception()).getStackTrace())[1];

return traceElement.getMethodName();

}

// 当前行号

public static int _LINE_() {

StackTraceElement traceElement = ((new Exception()).getStackTrace())[1];

return traceElement.getLineNumber();

}

// 当前时间

public static String _TIME_() {

Date now = new Date();

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");

return sdf.format(now);

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: