Прога (дельфовая) берёт число из HTML-страницы, точнее из одного из её столбцов и произносит это число. Так вот есть решение, что если число в столбце однозначное, двухзначное и трехзначное. Необходимо дописать на четырехзначное число.Для облегчения задачи - вот кодинг первых трех (решенных) позиций:
Код:
// число трехзначное
if Length(strATMNum)=3 then
begin
strMediaFile:='wav\'+IntToStr(
(StrToInt(strATMNum[1])*100)
)+'.wav';
sndPlaySound(PChar(strMediaFile), SND_SYNC);
if (strAtmNum[2]<>'0')and(strAtmNum[2]<>'1') then begin
strMediaFile:='wav\'+IntToStr(
(StrToInt(strATMNum[2])*10)
)+'.wav';
sndPlaySound(PChar(strMediaFile), SND_SYNC);
if strAtmNum[3]<>'0' then begin
strMediaFile:='wav\'+strATMNum[3]+'.wav';
sndPlaySound(PChar(strMediaFile), SND_SYNC);
end;
end
else
if strAtmNum[2]='0' then begin
strMediaFile:='wav\'+strATMNum[3]+'.wav';
sndPlaySound(PChar(strMediaFile), SND_SYNC);
end
else
if (strAtmNum[2]<>'0')and(strAtmNum[2]='1') then
begin
strMediaFile:='wav\'+IntToStr( (StrToInt(strATMNum[2])*10)+StrToInt(strAtmNum[3]) )+'.wav';
sndPlaySound(PChar(strMediaFile), SND_SYNC);
end;
end;//if 3
// число двуххзначное
if Length(strATMNum)=2 then
begin
if (strAtmNum[1]<>'0')and(strAtmNum[1]<>'1') then begin
strMediaFile:='wav\'+IntToStr(
(StrToInt(strATMNum[1])*10)
)+'.wav';
sndPlaySound(PChar(strMediaFile), SND_SYNC);
if strAtmNum[2]<>'0' then begin
strMediaFile:='wav\'+strATMNum[2]+'.wav';
sndPlaySound(PChar(strMediaFile), SND_SYNC);
end;
end
else
if strAtmNum[1]='0' then begin
strMediaFile:='wav\'+strATMNum[2]+'.wav';
sndPlaySound(PChar(strMediaFile), SND_SYNC);
end
else
if (strAtmNum[1]<>'0')and(strAtmNum[1]='1') then
begin
strMediaFile:='wav\'+IntToStr( (StrToInt(strATMNum[1])*10)+StrToInt(strAtmNum[2]) )+'.wav';
sndPlaySound(PChar(strMediaFile), SND_SYNC);
end;
end;//if 2
// число однозначное
if Length(strATMNum)=1 then
begin
strMediaFile:='wav\'+strATMNum+'.wav';
sndPlaySound(PChar(strMediaFile), SND_SYNC);
end;//if 1