| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1176 人关注过本帖
标题:请教editbox编辑框导入txt文件并修改后再次保存的问题?
只看楼主 加入收藏
kentg
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-11-27
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:3 
请教editbox编辑框导入txt文件并修改后再次保存的问题?
有两个按钮
【打开】按钮的代码:

PUBLIC openfile,gnFileHandle,nSize,cString
openfile=SYS(5)+SYS(2003)+'\备注.txt'
gnFileHandle=FOPEN(openfile,12)
nSize=FSEEK(gnFileHandle,0,2)
IF nSize <= 0  
    WAIT WINDOW "文件是空的或文件已被打开!" NOWAIT
ELSE
    =FSEEK(gnFileHandle,0,0)
    cString = FREAD(gnFileHandle, nSize)
    this.edit1.Value = cString
ENDIF
= FCLOSE(gnFileHandle)

【保存】按钮的代码:
gnFileHandle=FOPEN(openfile,12)
=FWRITE(gnFileHandle,ALLTRIM(this.Parent.edit1.Value))
=FCLOSE(gnFileHandle)

问题是:
调出“备注.txt”文件显示在edit1里面没问题,增加内容再保存也没问题(注意这里是增加),问题就是修改和删减内容再保存就有点乱了,比如把整篇内容都清空,然后再随便输入几个字符,再按保存,没出错,但再看回txt文件,还是原来的内容,而后来输入的几个字符反而覆盖了原本内容的头头几个字符。

请各位大侠指导一下,我如何才能做出删减的效果。
搜索更多相关主题的帖子: PUBLIC 
2013-09-05 17:39
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:10 
用FILETOSTR()与STRTOFILE()即可解决问题
将TXT文件导入EDIT1中
THISFORM.EDIT1.VALUE=FILETOSTR(SYS(5)+SYS(2003)+'\备注.txt')

将EDIT1中的内容保存到TXT中
STRTOFILE(ALLTRIM(THISFORM.EDIT1.VALUE),SYS(5)+SYS(2003)+'\备注.txt')

坚守VFP最后的阵地
2013-09-05 17:45
kentg
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-11-27
收藏
得分:0 
回复 2楼 sdta
原来这么简单,我复杂化了,非常感谢。
2013-09-05 17:54
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
打开 按钮代码
程序代码:
THISFORM.AddProperty([FILENAME],[])
THISFORM.FILENAME=GETFILE([TXT])
IF LEN(FILETOSTR(THISFORM.FILENAME))#0 &&文件不为空
   THISFORM.EDIT1.Value=FILETOSTR(THISFORM.FILENAME)
ENDIF


保存 按钮代码
STRTOFILE(THISFORM.EDIT1.VALUE,THISFORM.FILENAME)


[ 本帖最后由 sdta 于 2013-9-5 18:08 编辑 ]

坚守VFP最后的阵地
2013-09-05 18:02
快速回复:请教editbox编辑框导入txt文件并修改后再次保存的问题?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019814 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved