数字型日期如何导出为文字格式

hyzhyclcs 2010-10-11 10:00:42
有这样一个小的需求,数据库中的日期表现形式为数字型,但在导出成为EXCEL表格打印的时候,要将数字型改为文字形式.
举个例子:
2010年4月 ==》二零一零年四月
请教如何实现。
...全文
141 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hyzhyclcs 2010-10-12
  • 打赏
  • 举报
回复
感谢大家分享经验
SQLDebug_Fan 2010-10-11
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 lihuasoft 的回复:]
另一种写法


Delphi(Pascal) code

procedure I2U(var s: WideString);
const
M: WideString = '零一二三四五六七八九';
var
I: Integer;
begin
for I := 1 to Length(s) do
if Char(s[I]) in ['0'..'9'] th……
[/Quote]
支持这个写法
kye_jufei 2010-10-11
  • 打赏
  • 举报
回复
用SQL的case when then也可。。。
lihuasoft 2010-10-11
  • 打赏
  • 举报
回复
另一种写法


procedure I2U(var s: WideString);
const
M: WideString = '零一二三四五六七八九';
var
I: Integer;
begin
for I := 1 to Length(s) do
if Char(s[I]) in ['0'..'9'] then
s[I] := M[StrtoInt(s[I])+1];
end;

procedure TForm1.Button1Click(Sender: TObject);
var
S: WideString;
begin
S := '2010年4月';
I2U(S);
Showmessage(S);
end;
lihuasoft 2010-10-11
  • 打赏
  • 举报
回复

procedure I2U(var s: WideString);
var
I: Integer;
begin
for I := 1 to Length(s) do begin
case s[I] of
'0': s[I] := WideString('零')[1];
'1': s[I] := WideString('一')[1];
'2': s[I] := WideString('二')[1];
'3': s[I] := WideString('三')[1];
'4': s[I] := WideString('四')[1];
'5': s[I] := WideString('五')[1];
'6': s[I] := WideString('六')[1];
'7': s[I] := WideString('七')[1];
'8': s[I] := WideString('八')[1];
'9': s[I] := WideString('九')[1];
end;
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
S: WideString;
begin
S := '2010年4月';
I2U(S);
Showmessage(S);
end;

2,498

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧