系统程序
# FastWeb 系统程序
- 适用平台:WEB(桌面),APP(移动)
该手册内的内容用于编写程序时作为参考,包含系统中使用的部分程序。
# 1. 字符串处理程序
# 1.1. Delete
procedure Delete(var S: string; Index,Count: Integer);
1
- 该过程从一个字符串中移除一个子串。
部分 | 说明 |
---|---|
S | 字符串表达式 |
Index | 整形表达式,表示删除字符串的起始位置 |
Count | 整形表达式,表示删除的字符数 |
- 示例:
//JScript
var s1,s2;
s1 = "Hi,Hello";
s2 = "IsoFace,";
Delete(s1,s1,4);
ShowMessage(s1);
1
2
3
4
5
6
2
3
4
5
6
var
s1: String;
begin
s1 := 'Hi,Hello';
Delete(s1,1,4);
ShowMessage(s1);
end;
1
2
3
4
5
6
7
2
3
4
5
6
7
// Make sure to add code blocks to your code group
- 运行结果:
ello
# 1.2. Insert
procedure Insert(Source: String; var S: String; Index:Integer);
1
- 该过程以某个位置开始相字符串中插入一个子字符串。
部分 | 说明 |
---|---|
Source | 字符串表达式 |
S | 字符串表达式,作为插入的数据 |
Index | 整形表达式,表示插入字符串的起始位置 |
- 示例:
//JScript
var s1,s2;
s1 = "Hi,Hello";
s2 = "IsoFace,";
Insert(s2,s1,0);
ShowMessage(s1);
1
2
3
4
5
6
2
3
4
5
6
//PasScript
var
s1: String;
s2: String;
begin
s1 := 'Hi,Hello';
s2 := 'IsoFace,';
Insert(s2,s1,0);
ShowMessage(s1);
end;
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
// Make sure to add code blocks to your code group
- 运行结果:
IsoFace,Hi,Hello
# 1.3. SetLength
procedure SetLength(var S; NewLength: Integer);
1
- 该过程用于设置字符串或动态数组的长度。
部分 | 说明 |
---|---|
S | 字符串或者动态数组表达式 |
NewLength | 整形表达式,用于设置字符串或动态数组的长度 |
- 示例
//JScript
var arr[0],i;
SetLength(arr,5);
for (i = 0; i <= 4; i++)
{
arr[i] = i;
ShowMessage(IntToStr(arr[i]));
}
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
//PasScript
var
arr: Array of Integer;
i: Integer;
begin
SetLength(arr,5);
for i := 0 to 4 do
begin
arr[i] := i;
ShowMessage(IntToStr(arr[i]));
end;
end;
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
// Make sure to add code blocks to your code group
- 运行结果
0 1 2 3 4
# 2. 科学计算程序
# 2.1. DivMod
procedure DivMod(Dividend: Cardinal; Divisor: Word; var Result, Remainder: Word);
1
- 该过程返回两个操作数相除的商和余数。
部分 | 说明 |
---|---|
Dividend | 整型表达式,表示被除数 |
Divisor | 整型表达式,表示除数 |
Result | 整型表达式,用于存储Dividend与Divisor相除的商 |
Remainder | 整型表达式,用于存储余数 |
- 示例:
//JScript
var a,b;
DivMod(13,3,a,b);
ShowMessage(IntToStr(a) + " " + IntToStr(b));
DivMod(15,3,a,b);
ShowMessage(IntToStr(a) + " " + IntToStr(b));
1
2
3
4
5
6
2
3
4
5
6
//PasScript
var
a,b: word;
begin
DivMod(13,3,a,b);
ShowMessage(IntToStr(a) + ' ' + IntToStr(b));
DivMod(15,3,a,b);
ShowMessage(IntToStr(a) + ' ' + IntToStr(b));
end;
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
// Make sure to add code blocks to your code group
- 运行结果:
4 1 5 0
# 3. 序数程序
该章节暂无可用程序。
# 4. 金融程序
该章节暂无可用程序。
# 5. 随机数程序
# 5.1. Randomize
procedure Randomize;
1
该程序用于初始化内置的随机数生成器。
示例:
Randomize;
ShowMessage(IntToStr(RandomRange(0,10)));
1
2
2
begin
Randomize;
ShowMessage(IntToStr(RandomRange(0,10)));
end;
1
2
3
4
2
3
4
// Make sure to add code blocks to your code group
- 运行结果:运行该语句后产生一个大于等于0小于10的整数。
# 6. 单位转换程序
# 6.1. RaiseConversionError
procedure RaiseConversionError(const AText: string);
1
- 该程序用于触发一个单位转换异常。
部分 | 说明 |
---|---|
AText | 字符串表达式,用于指定异常产生时的消息 |
AArgs | 数组常量表达式,用于支持AText所标识的格式 |
- 示例:
//JScript
RaiseConversionError("Conversion Error");
1
2
2
//PasScript
begin
RaiseConversionError('Conversion Error');
end;
1
2
3
4
2
3
4
// Make sure to add code blocks to your code group
- 运行结果:弹出错误提示。
# 7. 日期程序
# 7.1. DecodeDate
procedure DecodeDate(Date: TDateTime; var Year,Month,Day:Word);
1
- 该程序分解TDateTime类型表达式为年、月、日。
部分 | 说明 |
---|---|
Date | 待分解的TDateTime值 |
Year | 得到TDateTime值分解后的年份 |
Month | 得到TDateTime值分解后的月份 |
Day | 得到TDateTime值分解后的日 |
- 示例:
//JScript
var Year,Month,Day;
DecodeDate(Now,Year,Month,Day);
ShowMessage(IntToStr(Year) + "/" + IntToStr(Month) + "/" + IntToStr(Day));
1
2
3
4
2
3
4
//PasScript
var
Year,Month,Day: Word;
begin
DecodeDate(Now,Year,Month,Day);
ShowMessage(IntToStr(Year) + '/' + IntToStr(Month) + '/' + IntToStr(Day));
end;
1
2
3
4
5
6
7
2
3
4
5
6
7
// Make sure to add code blocks to your code group
- 运行结果:显示当前日期的年月日信息。
# 7.2. DecodeTime
procedure DecodeTime(Time: TDateTime; var Hour,Min,Sec,MSec:Word);
1
- 该过程将TDateTime表达式的日期时间拆分成时、分、秒、毫秒。
部分 | 说明 |
---|---|
Time | 待分解的时间表达式 |
Hour | 返回时间表达式的小时 |
Min | 返回时间表达式的分钟 |
Sec | 返回时间表达式的秒钟 |
MSec | 返回时间表达式的毫秒 |
- 示例:
//JScript
var hour,minute,second,millisecond;
DecodeTime(Now,hour,minute,second,millisecond);
ShowMessage(IntToStr(hour) + ":" + IntToStr(minute) + ":" + IntToStr(second) + ":"
+ IntToStr(millisecond));
1
2
3
4
5
2
3
4
5
//PasScript
var
hour,minute,second,millisecond: Word;
begin
DecodeTime(Now,hour,minute,second,millisecond);
ShowMessage(IntToStr(hour) + ':' + IntToStr(minute) + ':' + IntToStr(second) + ':'
+ IntToStr(millisecond));
End;
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
// Make sure to add code blocks to your code group
该语句执行后,显示当前的系统时间。
# 7.3. IncAMonth
procedure IncAMonth(var Year, Month, Day: Word; NumberOfMonths: Integer = 1);
1
- 根据指定的值来增加或修改月份。
部分 | 说明 |
---|---|
Year | 返回年份 |
Month | 返回月份 |
Day | 返回日 |
NumberOfMonths | 待增加或减少月的数量 |
- 示例:
//JScript
var Year,Month,Day;
Year = 2020;
Month = 11;
Day = 1;
IncAMonth(Year,Month,Day,1);
ShowMessage("Next Month date:" + IntToStr(Year) + "/" + IntToStr(Month) + "/" + IntToStr(Day));
1
2
3
4
5
6
7
2
3
4
5
6
7
//PasScript
Var
Year,Month,Day: Word;
begin
Year := 2020;
Month := 11;
Day := 1;
IncAMonth(Year,Month,Day,1);
ShowMessage('Next Month date:' + IntToStr(Year) + '/' + IntToStr(Month) + '/' + IntToStr(Day));
end;
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
// Make sure to add code blocks to your code group
- 运行结果:
Next Month date:2020/12/1
# 7.4. ReplaceDate
procedure ReplaceDate(var DateTime: TDateTime; const NewDate: TDateTime);
1
- 该过程将指定时间中的日期替换为其他日期。
部分 | 说明 |
---|---|
DateTime | 将要替换日期部分的时间 |
NewDate | 替换日期的指定值 |
返回值:返回替换后的日期。
示例:
//JScript
var ADate,BDate;
ADate = StrToDate("2020-11-01");
BDate = StrToDate("2020-10-01");
ReplaceDate(ADate,BDate);
ShowMessage(DateToStr(ADate));
1
2
3
4
5
6
2
3
4
5
6
//PasScript
var
ADate: TDateTime;
BDate: TDateTime;
begin
ADate := StrToDate('2020-11-01');
BDate := StrToDate('2020-10-01');
ReplaceDate(ADate,BDate);
ShowMessage(DateToStr(ADate));
end;
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
// Make sure to add code blocks to your code group
- 运行结果:
2020-10-01
# 7.5. ReplaceTime
procedure ReplaceDate(var DateTime: TDateTime; const NewDate: TDateTime);
1
- 该过程将指定时间中的时间替换为其他时间。
部分 | 说明 |
---|---|
DateTime | 将要替换的时间 |
NewDate | 指定替换的时间 |
返回值:返回替换后的时间。
示例:
//JScript
var ADate,BDate;
ADate = StrToDateTime("2020-11-01 12:00:00");
BDate = StrToDateTime("19:28:17");
ReplaceTime(ADate,BDate);
ShowMessage(DateTimeToStr(ADate));
1
2
3
4
5
6
2
3
4
5
6
//PasScript
var
ADate: TDateTime;
BDate: TDateTime;
begin
ADate := StrToDateTime('2020-11-01 12:00:00');
BDate := StrToDateTime('19:28:17');
ReplaceTime(ADate,BDate);
ShowMessage(DateTimeToStr(ADate));
end;
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
// Make sure to add code blocks to your code group
- 运行结果:
2020-11-01 19:28:17
# 8. 格式化程序
该章节暂无可用程序。
# 9. 对话框程序
# 9.1. ShowMessage
procedure ShowMessage(const Msg: String);
1
- 该过程显示一个简单的消息框。
部分 | 说明 |
---|---|
Msg | 消息对话框要显示的提示信息内容 |
//JScript
ShowMessage("Hello");
1
2
2
//PasScript
begin
ShowMessage('Hello');
end;
1
2
3
4
2
3
4
// Make sure to add code blocks to your code group
执行上述代码,弹出Hello提示。
# 10. 流程控制
# 10.1. Abort
procedure Abort;
1
- 该过程产生一个特殊的"无记载异常",此异常与其他异常相同,只是不显示错误信息。
# 10.2. Exit
proceure Exit;
1
- 该过程立即使控制退出当前过程,继续执行此过程调用位置后的代码,如果当前过程为主程序,则程序终止运行。该程序仅在PasScript下有效。
# 10.3. return
proceure return;
1
该程序仅在JScript下可使用, 立即使控制退出当前过程,继续执行此过程调用位置后的代码。
# 11. 内存管理程序
# 11.1. StrToStream
Procedure StrToStream(AString:String;AStream:TMemoryStream);
1
该程序将获字符串变量 Astream
转换为 内存流 AStream
。