<>0,表示在文件结尾; str,字符型,要写入的字符串; Rn,开关型,是否换行;
0,表示不换行; 1,表示换行。
实 例:!FileWriteStr (\。
实例说明:在D盘下a.txt文件的开头(当a为0时)或结尾(当a为1时)写入一个字
符串\,如果input为1时,在此字符串后面添加回车换行,否则不添加。
注 意:在文件开头写入字符串时,将覆盖原有内容;在文件结尾写入字符串时,将
在原有基础上添加,并不覆盖原来的内容。
!FileReadStrLimit(str,int,int,int,str)
函数意义:把数据按照给定的长度格式化处理成固定的长度,并且读出文件。 返 回 值:数值型。返回值=0:打开文件成功,读回数据成功; =1:打开文件成功,没有读到数据(Eof); =-1:文件不存在; =-2:文件存在无法打开; =-3:组态错误;
=-4:未定义的文件打开错误。
参 数:str,字符串,需要操作的文件名称,包含绝对路径和文件名,如果不包含
路径,则表示在当前工程路径下;如果不包含扩展名,则扩展名为DAT;如果字符串为空,则表示路径为当前路径,文件名为当前工程名称+File,扩展名为Dat;
int,开关型,读数据的起始位置,该数据的单位是字节,从1开始,如果小于1,则在程序内部应该有防错处理;
int,开关型,读数据的长度,此长度的数据可能包含了若干填充符(Ascii的0);
int,数值型,格式化方式,如果读回的数据中包含填充符,写入MCGS变量中时是否保留这些填充符,0 不保留,1保留; str,字符型,存放读回来的数据的MCGS字符型变量。
实 例:!FileReadStrLimit(\读出格式化后的文件。
实例说明:将a.txt文件从第1字节开始,读取数据,按6字节长度格式化,读回的数据
中若包含填充符,写入MCGS变量中时保留这些填充符。
!FileWriteStrLimit(str,int,int,int,str,int,int)
函数意义:把数据按照给定的长度格式化处理成固定的长度,并且写出文件。 返回 值:数值型。返回值=0:打开文件成功,写入数据成功;
=1:打开文件成功,无法写入(硬盘空间不够等); =-1:文件不存在且无法创建; =-2:文件存在,无法打开; =-3:组态错误;
=-4:未定义的文件打开错误。
参 数:str,字符串,需要操作的文件名称,包含绝对路径和文件命,如果不包含路
径,则表示在当前工程路径下;如果不包含扩展名,则扩展名为DAT;如果字符串为空,则表示路径为当前路径,文件命为当前工程名称+File,扩展名为Dat;
int,开关型,写数据的起始位置,该数据的单位是字节;任意的正数,表示
从该字节的位置开始写数据,插入方式从该字节之后插入,覆盖方式就直接覆盖该部分数据;0,表示用文件头开始写记录;-1,表示从文件尾开始写记录,无论插入或覆盖方式,最后的结果都是插入数据,即不会修改原有的任何数据;
int,开关型,数据写入文件后的长度,此长度的数据可能包含了若干填充符
(Ascii的0);
int,格式化方式,如果被写的数据长度大于参数2指定的长度,则在剪裁该数据的左边还是右边,即斩头还是去尾,0左边(斩头),1右边(去尾);如果反之,被写的数据长度小于参数2指定的长度,则固定在在数据的右边(后边)添加填充符(Ascii的0);
str,字符型,存放被写数据的MCGS字符型变量;
int,数值型,写记录的方式,0插入,1覆盖;
int,数值型,本次写操作是否作为结束本条记录,0表示本条记录结束, 1表示本条记录未写完;
实 例:!FileWriteStrLimit(\ 写出格式化后的文件。
实例说明:将a.txt文件从第1字节开始,写数据,按6字节长度,右边(去尾)格式
化,被写数据的MCGS字符型变量存放在变量a中,记录方式为插入记录,本次操作结束记录。
时间运算函数
!TimeStr2I(strTime)
函数意义:将表示时间的字符串(YYYY/MM/DD HH:MM:SS)转换为时间值。 返 回 值:开关型,转换后的时间值。
参 数:strTime,字符型,以字符串型表示的时间(YYYY/MM/DD HH:MM:SS)。 实 例:!TimeStr2I(\。
实例说明:将表示时间的字符串“2001/1/1 3:15:28”转换为开关型的时间值。
!TimeI2Str(iTime,strFormat)
函数意义:将时间值转换为字符串表示的时间。 返 回 值:字符型,转换后的时间字符串。
参 数:iTime,开关型,时间值(注意,这里只能用 !TimeStr2I(strTime)转换出的时间
值,否则将不能正确转换。);
strFormat,字符型,转换后的时间字符串的格式。 实 例:!TimeI2Str(Time,\。
实例说明:将时间值转换为字符串型,其表示格式为:星期,月 日,年。
!TimeI2Str的格式化标准为: %a
星期的简写。如:Fri是Friday的简写表示星期五 %A
星期的全称。如:Sunday表示星期日 %b
月份的简写。如:Jan是January的简写表示一月 %B
月份的全称。如:June表示六月 %c
适合于本地习惯的时间日期表示。如:05/07/01 09:47:12,表示2001年5月7日9时47分12秒 %d
月份中日期的十进制表示。如:07表示7日 %H
24时制的小时表示。如:17表示下午5时 %I
12时制的小时表示。 %j
一年中天数的十进制表示。如:2001-06-07是一年中第158天 %m
月份的十进制表示。如:06表示6月 %M
分钟的十进制表示。如:28表示28分 %p
以AM/PM方式表示上下午;AM表示上午;PM表示下午 %S
秒钟的十进制表示。 %U
一年中周数的十进制表示,星期日为第一天。如:2001-06-07是第22周 %w
星期的十进制表示;0,表示星期日;1,表示星期一;依此类推。 %W
一年中周数的十进制表示,星期一为第一天。如:2001-06-07是第23周 %x
适合当地的日期表示。如:2001-06-07表示为:06/07/01 %X
适合当地的时间表示。如:9时47分12秒表示为:09:47:12 %y
不显示世纪的年的十进制表示。如:01表示2001年 %Y
显示世纪的年的十进制表示。如:2001表示2001年 %z或者%Z
时区名称的简写,如果时区不可知则没有字符。如:中国标准时间 %% 百分号表示
注:目前,在此版本中有些显示参数还没有实现其功能,具体的有%p %U %w %W %x %z %a %A %b %B %c %I %j。
!TimeGetYear(iTime)
函数意义:获取时间值iTime中的年份。 返 回 值:开关型,时间值iTime中的年份。 参 数:iTime,开关型,时间值。 实 例:!TimeGetYear(iTime)。 实例说明:获取时间值iTime中的年份。
!TimeGetMonth(iTime)
函数意义:获取时间值iTime中的月份。
返 回 值:开关型,时间值iTime中的月份(1~12)。
参 数:iTime,开关型,时间值。 实 例:!TimeGetMonth(iTime)。 实例说明:获取时间值iTime中的月份。
!TimeGetSecond(iTime)
函数意义:获取时间值iTime中的秒数。
返 回 值:开关型,时间值iTime中的秒数(0~59)。 参 数:iTime,开关型,时间值。 实 例:!TimeGetSecond(iTime)。 实例说明:获取时间值iTime中的秒数。
!TimeGetSpan(iTime1,iTime2)
函数意义:计算两个时间iTime1和iTime2之差。 返 回 值:开关型,两时间之差。 参 数:iTime1,开关型,时间值;
iTime2,开关型,时间值。
实 例:!TimeGetSpan(iTime1,iTime2)
实例说明:计算两个时间iTime1和iTime2之差。
!TimeGetDayOfWeek(iTime)
函数意义:获取时间值iTime中的星期。
返 回 值:开关型,时间值iTime中的秒数(1 为星期日, 2 表示星期一,??)。 参 数:iTime,开关型,时间值。 实 例:!TimeGetDayOfWeek(iTime)。 实例说明:获取时间值iTime中的星期。
!TimeGetHour(iTime)
函数意义:获取时间值iTime中的小时。
返 回 值:开关型,时间值iTime中的小时(0~23)。 参 数:iTime,开关型,时间值。 实 例:!TimeGetHour(iTime)。 实例说明:获取时间值iTime中的小时。
!TimeGetMinute(iTime)
函数意义:获取时间值iTime中的分钟。