回 帖 发 新 帖 刷新版面

主题:如何按条件复制文本里的内容!

请问各位高手,我如何按条件复制文本的内容到新的文本中呢?不用DBF方式!
如A.TXT内容:
0707002701100123 20000 20080512
0707002701100456 40000 20080513
0707002701100789 30000 20080514
0707002701100123 50000 20080513
0707002701100123 10000 20080516
0707002701100789 80000 20080513

我想将有"0707002701100123"每一行文本,整行都复制到一起,并产生一个新的文本B.TXT中,请问如何写命令呀!
如了B.TXT内容:
0707002701100123 20000 20080512
0707002701100123 50000 20080513
0707002701100123 10000 20080516

回复列表 (共5个回复)

沙发

我的思路就是先把文本导入到表
然后建立索引
最后copy to b type sdf


等待其它高手

板凳

我记得有个函数可以把文本文件赋值给变量,大家想想吧?到变量上就好处理了。

3 楼

^_^ 找到了 呵呵

将一个文件的内容返回为一个字符串。
FILETOSTR(cFileName)
返回值字符型
参数  cFileName 指定文件的名称,该文件的内容返回为一个字符串。如果该文件不在当前默认目录中,在文件名中需要包含路径。 
备注  注意,FILETOSTR()返回的字符串可以很大。可用内存或硬盘的空间大小决定了是否可以将该字符串保存到一个变量

例如:当前目录下有个文本文件叫“文件1.TXT”

C变量名=FILETOSTR("文件1.TXT")   && 注意:不在当前目录必须使用全路径!

然后根据你的需要处理这个变量,再用“STRTOFILE()”函数存入文件

*  STRTOFILE(cExpr,cFile) 将一个字符串的内容写入一个文件。
指定要写入一个文件的字符串。cExpr  可以是一个原意字符串,几个结果为字符串的表达式,或者是一个字符型变量、数组元素或字段。 
cFile 指定要写入字符串的文件。如果该文件不在当前默认目录中,在文件名需要包含路径。如果所指定的文件不存在,Visual FoxPro 会自动创建它。

上例:

N1=STRTOFILE(C变量名, c文件2)   && 不指定全路径则默认当前目录

4 楼

不好意思,我没说清楚,我是说要将A.TXT文本中的内容,查找自己所符合条件的那些行,再将它们整行都复制到B.TXT中

5 楼

这样的格式可以很容易的转到DBF.

CREATE TABLE test(a c(16),b c(5),c c(8))
APPEND FROM FILENAME DELIMITED WITH blank
BROWSE

后面的查询到另外一个TXT就不写了吧?应该简单的很.

我来回复

您尚未登录,请登录后再回复。点此登录或注册