转载 java常用方法(日期格式化,金额格式化,写文件)
//日期增减的完成
public static void main(String arg[]){
SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd HH.mm.ss");
GregorianCalendar gc = new GregorianCalendar();
gc.setTime(new Date());
System.out .println();
// gc.add(1,-1); 年-1
//gc.add(2,-1); 月-1
//gc.add(3,-1); 周-1
//gc.add(5,-30); 日-1
gc.add(Calendar.YEAR,-1);
gc.set(gc.get(gc.YEAR),gc.get(gc.MONTH),gc.get(gc.DATE));
df.format(gc.getTime());
System.out.println(df.format(gc.getTime()));
}
//系统日期的格式化
SimpleDateFormat format = new SimpleDateFormat("yyyyMM");
String sysDate = format.format(new Date());
System.out.println(sysDate);
//日期添加斜杠
public String strSubString(String strDate){
String str=strDate.substring(0,4)+"/"+strDate.substring(4,6)+"/"+strDate.substring(6,8);
return str;
}
//金额进行格式化:(88,788.34)
public String buildFlgID(String strFlag ) {
int intStringLength=0;
int intStringArray=0;
String strsubstring="";
String strEnd="";
String strStart=strFlag;
if(strFlag.indexOf(".")!=-1){
strStart=strFlag.substring(0,strFlag.indexOf("."));
strEnd=strFlag.substring(strFlag.indexOf("."),strFlag.length());
System.out.println(strEnd);
}
intStringLength=strStart.length();
if(intStringLength % 3 == 0){
intStringArray=intStringLength/3;
for(int i=intStringLength;i>2;i-=3){
strsubstring=","+strStart.substring(i-3,i)+strsubstring ;
}
strsubstring=strsubstring.substring(1,strsubstring.length());
}else{
intStringArray=intStringLength/3;
for(int i=intStringLength;i>2;i-=3){
strsubstring=","+strStart.substring(i-3,i)+strsubstring ;
}
strsubstring=strStart.substring(0,intStringLength % 3)+strsubstring;
}
return strsubstring+strEnd;
}
//反射的例子
import java.lang.reflect.*;
public class DumpMethods {
public static void main(String args[]) {
try {
//反射機制例子
//這个程序使用 Class.forName 載入指定的類,然后調用 getDeclaredMethods 来獲取這個類中定義的方法列表。
//java.lang.reflect.Methods 是用来描述某个類中單个方法的一个類。
String className[] ={"java.util.ArrayList","java.util.Stack"};
for(int j=0;j<className.length;j++){
Class c = Class.forName(className[j]);
Method m[] = c.getDeclaredMethods();
Field f[]=c.getDeclaredFields();
for (int i = 0; i < m.length; i++)
System.out.println("Methods is:"+m[i].toString());
for(int x=0;x<f.length;x++)
System.out.println("Field is:"+f[x].toString());
}
} catch (Throwable e) {
System.err.println(e);
}
}
//判断文件是否存在
File file=new File(FileIdPath);
if (!file.exists()) {
..........
}
//写CSV文件
/**
* 打印bat文件を生成する
* @param csv 打印bat文件對象
* @param printFileIdh 打印bat路徑
* @throws IOException ファイルの読み込み失敗時のメッセージ
*/
public void printFileBat(CPTICsvRow csv,String printFileIdh, boolean fileStatic) throws IOException {
try{
BufferedWriter outPrint = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(printFileIdh, fileStatic),"MS932"));
outPrint.write(csv.toString());
outPrint.newLine();
outPrint.close();
}catch (IOException e) {
//エラーメッセージ出力
String errorMsg = "Print Dat File " + printFileIdh + " エラー。";
throw new IOException(errorMsg);
}
}
//日期增减的完成
public static void main(String arg[]){
SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd HH.mm.ss");
GregorianCalendar gc = new GregorianCalendar();
gc.setTime(new Date());
System.out .println();
// gc.add(1,-1); 年-1
//gc.add(2,-1); 月-1
//gc.add(3,-1); 周-1
//gc.add(5,-30); 日-1
gc.add(Calendar.YEAR,-1);
gc.set(gc.get(gc.YEAR),gc.get(gc.MONTH),gc.get(gc.DATE));
df.format(gc.getTime());
System.out.println(df.format(gc.getTime()));
}
//系统日期的格式化
SimpleDateFormat format = new SimpleDateFormat("yyyyMM");
String sysDate = format.format(new Date());
System.out.println(sysDate);
//日期添加斜杠
public String strSubString(String strDate){
String str=strDate.substring(0,4)+"/"+strDate.substring(4,6)+"/"+strDate.substring(6,8);
return str;
}
//金额进行格式化:(88,788.34)
public String buildFlgID(String strFlag ) {
int intStringLength=0;
int intStringArray=0;
String strsubstring="";
String strEnd="";
String strStart=strFlag;
if(strFlag.indexOf(".")!=-1){
strStart=strFlag.substring(0,strFlag.indexOf("."));
strEnd=strFlag.substring(strFlag.indexOf("."),strFlag.length());
System.out.println(strEnd);
}
intStringLength=strStart.length();
if(intStringLength % 3 == 0){
intStringArray=intStringLength/3;
for(int i=intStringLength;i>2;i-=3){
strsubstring=","+strStart.substring(i-3,i)+strsubstring ;
}
strsubstring=strsubstring.substring(1,strsubstring.length());
}else{
intStringArray=intStringLength/3;
for(int i=intStringLength;i>2;i-=3){
strsubstring=","+strStart.substring(i-3,i)+strsubstring ;
}
strsubstring=strStart.substring(0,intStringLength % 3)+strsubstring;
}
return strsubstring+strEnd;
}
//反射的例子
import java.lang.reflect.*;
public class DumpMethods {
public static void main(String args[]) {
try {
//反射機制例子
//這个程序使用 Class.forName 載入指定的類,然后調用 getDeclaredMethods 来獲取這個類中定義的方法列表。
//java.lang.reflect.Methods 是用来描述某个類中單个方法的一个類。
String className[] ={"java.util.ArrayList","java.util.Stack"};
for(int j=0;j<className.length;j++){
Class c = Class.forName(className[j]);
Method m[] = c.getDeclaredMethods();
Field f[]=c.getDeclaredFields();
for (int i = 0; i < m.length; i++)
System.out.println("Methods is:"+m[i].toString());
for(int x=0;x<f.length;x++)
System.out.println("Field is:"+f[x].toString());
}
} catch (Throwable e) {
System.err.println(e);
}
}
//判断文件是否存在
File file=new File(FileIdPath);
if (!file.exists()) {
..........
}
//写CSV文件
/**
* 打印bat文件を生成する
* @param csv 打印bat文件對象
* @param printFileIdh 打印bat路徑
* @throws IOException ファイルの読み込み失敗時のメッセージ
*/
public void printFileBat(CPTICsvRow csv,String printFileIdh, boolean fileStatic) throws IOException {
try{
BufferedWriter outPrint = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(printFileIdh, fileStatic),"MS932"));
outPrint.write(csv.toString());
outPrint.newLine();
outPrint.close();
}catch (IOException e) {
//エラーメッセージ出力
String errorMsg = "Print Dat File " + printFileIdh + " エラー。";
throw new IOException(errorMsg);
}
}