关于窗口调用函数时 打开 与 保存 的 代码应该怎么写 是关于fileread filewrite fileopen 请高手具体点帮我把打开与保存的写一下我研究一下 谢谢。
------最佳解决方案--------------------
你自己多看看帮助文档
integer li_FileNum, loops, i
long flen, bytes_read
blob b, tot_b
//获取文件长度
flen = FileLength(sle_filename.Text)
//打开文件
li_FileNum = FileOpen(sle_filename.Text, StreamMode!, Read!, LockRead!)
//由于FileRead一次最多只能读取32765字节,
//所以先要判断下需要读几次
IF flen > 32765 THEN
IF Mod(flen, 32765) = 0 THEN
loops = flen/32765
ELSE
loops = (flen/32765) + 1
END IF
ELSE
loops = 1
END IF
//读取内容
FOR i = 1 to loops
bytes_read = FileRead(li_FileNum, b)
tot_b = tot_b + b
NEXT
//记得要关闭
FileClose(li_FileNum)
------其他解决方案--------------------
F1谁用谁知道
------其他解决方案--------------------
顶一下!!!
------其他解决方案--------------------
我自己也试着写过问题是老是读取不到 不知道是不是因为代码的问题
------其他解决方案--------------------
代码是没问题的,要是你读取的是文本文件,看下编码是不是Unicode的,是的话,将编码设置为Ansi。
也可以用代码读取,你要从第3个字节开始读取,然后还要调用FromUnicode
读取Unicode版文本文件
integer li_FileNum, loops, i
long flen, bytes_read
blob b, tot_b
//获取文件长度
flen = FileLength("E:\aa.txt") - 2
//打开文件
li_FileNum = FileOpen("E:\aa.txt", StreamMode!, Read!, LockRead!)
//由于FileRead一次最多只能读取32765字节,
//所以先要判断下需要读几次
IF flen > 32765 THEN
IF Mod(flen, 32765) = 0 THEN
loops = flen/32765
ELSE
loops = (flen/32765) + 1
END IF
ELSE
loops = 1
END IF
FileSeek (li_FileNum,2)//注意这行
//读取内容
FOR i = 1 to loops
bytes_read = FileRead(li_FileNum, b)
tot_b = tot_b + b
NEXT
//记得要关闭
FileClose(li_FileNum)
mle_1.text=string(FromUnicode(tot_b))