当前位置: 代码迷 >> PB >> 本人初学PB 打算自己做一个记事本 有些不懂 请来看看
  详细解决方案

本人初学PB 打算自己做一个记事本 有些不懂 请来看看

热度:54   发布时间:2016-04-29 07:56:55.0
本人初学PB 打算自己做一个记事本 有些不懂 请高手进来看看
关于窗口调用函数时 打开 与 保存 的 代码应该怎么写 是关于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谁用谁知道
------其他解决方案--------------------
顶一下!!!
引用:
你自己多看看帮助文档
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!, Re……

------其他解决方案--------------------
我自己也试着写过问题是老是读取不到 不知道是不是因为代码的问题
------其他解决方案--------------------
代码是没问题的,要是你读取的是文本文件,看下编码是不是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))

  相关解决方案