int i_fh,i_cnt,i_sum
long l_file_length,l_ret
string s_temp
//打开文件
IF ai_type = 2 THEN
i_fh = FileOpen(as_filename,LineMode!,write!,LockWrite!,Append!)
l_file_length = 0
ELSE
//默认流式
l_file_length = FileLength(as_filename)
i_fh = FileOpen(as_filename,StreamMode!,write!,LockWrite!,Append!)
END IF
IF i_fh <0 THEN
FileClose(i_fh)
RETURN -1
END IF
i_sum = UpperBound(as_save)
IF i_sum<1 THEN RETURN -1
CHOOSE CASE ai_type
CASE 1
//流模式写文件
FOR i_cnt = 1 TO i_sum
FileWrite(i_fh,as_save[i_cnt])
NEXT
CASE 2
//行模式写文件
FOR i_cnt = 1 TO i_sum
FileWrite(i_fh,as_save[i_cnt])
NEXT
CASE ELSE
MessageBox('打开文件模式出错','没有这种文件模式,请与程序供应商联系 !')
END CHOOSE
int i_fh,i_cnt,i_sum,i_row
long l_file_length,l_ret
string s_temp
//文件不存在
IF NOT FileExists(as_filename) THEN RETURN -1
//打开文件
IF ai_type = 2 THEN
i_fh = FileOpen(as_filename,LineMode!,Read!,lockread!)
l_file_length = 0
ELSE
//默认流式
l_file_length = FileLength(as_filename)
i_fh = FileOpen(as_filename,StreamMode!,Read!,lockRead!)
END IF
IF i_fh <0 THEN
FileClose(i_fh)
RETURN -1
END IF
CHOOSE CASE l_file_length
CASE 0
//行模式读文件
l_ret = FileRead(i_fh,s_temp)
i_cnt = 1
i_row = 1
DO WHILE l_ret <> -100
IF i_row>=ai_startrow THEN as_save[i_cnt] = s_temp
l_ret = FileRead(i_fh,s_temp)
i_cnt ++
i_row ++
LOOP
CASE 1 TO 32374
//流模式读文件
l_ret = FileRead(i_fh,as_save[1])
IF l_ret < 0 THEN
FileClose(i_fh)
RETURN -1
END IF
CASE ELSE
//流模式循环读文件
i_sum = Int (l_file_length/32375) + 1
FOR i_cnt = 1 TO i_sum
FileRead(i_fh,as_save[i_cnt])
IF l_ret < 0 THEN EXIT
NEXT
END CHOOSE