/****************************************************************************
/* 功能:通过指定的分隔符格式化一个日期字符串
/* 参数:AnsiString表示将要被格式化的日期字符串 const AnsiString表示格式的字符 AnsiString&表示格式化后的日期字符串
/* 返回值:BOOL False表示日期字符串和分隔符字符串同时为空 true表示格式成功
/***************************************************************************/
BOOL TForm1::FormatDateStringBySeparativeSign(AnsiString strDate,const AnsiString strSepar,AnsiString& strOutDate){
if((strDate=="") || (strSepar=="")){
return false;
}
strDate.Insert(strSepar,5);
strDate.Delete(6,1);
strDate.Insert(strSepar,8);
int count=0;
if(!NumberCountInString(strDate.SubString(1,8).Trim(),count)){
return false;
}
if(count==6){
strOutDate = strDate.Delete(9,1);
}else{
strOutDate = strDate.Delete(7,1);
}
return true;
/* 功能:通过指定的分隔符格式化一个日期字符串
/* 参数:AnsiString表示将要被格式化的日期字符串 const AnsiString表示格式的字符 AnsiString&表示格式化后的日期字符串
/* 返回值:BOOL False表示日期字符串和分隔符字符串同时为空 true表示格式成功
/***************************************************************************/
BOOL TForm1::FormatDateStringBySeparativeSign(AnsiString strDate,const AnsiString strSepar,AnsiString& strOutDate){
if((strDate=="") || (strSepar=="")){
return false;
}
strDate.Insert(strSepar,5);
strDate.Delete(6,1);
strDate.Insert(strSepar,8);
int count=0;
if(!NumberCountInString(strDate.SubString(1,8).Trim(),count)){
return false;
}
if(count==6){
strOutDate = strDate.Delete(9,1);
}else{
strOutDate = strDate.Delete(7,1);
}
return true;
}
/****************************************************************************
/* 功能:统计一个字符串中数字的个数
/* 参数:AnsiString表示所要统计的字符串 int&表示得到的字符串中数字的个数
/* 返回值:BOOL false表示字符串为空 true表示成功
/***************************************************************************/
BOOL TForm1::NumberCountInString(AnsiString str,int& count){
if(str==""){
return false;
}
count=0;
char *p = str.c_str();
for(int i=0;i<str.Length();i++){
if(p[i]>=48 && p[i]<=57){
count++;
}
}
return True;
}