标题:如何将 课务分工20190101.txt文件写入jsrkb1.dbf中
只看楼主
王咸美
Rank: 1
等 级:新手上路
帖 子:569
专家分:0
注 册:2018-1-4
结帖率:96.99%
已结贴  问题点数:20 回复次数:13 
如何将 课务分工20190101.txt文件写入jsrkb1.dbf中
现有 课务分工20190101.txt文件和jsrkb1.dbf(空表),如何将 课务分工20190101.txt文件写入jsrkb1.dbf中,请高手赐教,万分感谢!!!
课务分工20190101.zip (2.82 KB)


搜索更多相关主题的帖子: 写入 txt dbf 文件 
2022-03-02 12:07
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:108
帖 子:2175
专家分:3785
注 册:2007-4-27
得分:0 
王老师:
一、感觉很奇怪,制作分工表的时候,为什么不用EXCEL?

二、我能想到的思路:
1、将文本文件中的复制到EXCEL中,成为3列,1列序号,2列姓名,3列是年级及学科名
2、在DBF中,将第3列的内容,依据规律分3列,一列年级、一列班级、一列学科,多条记录
3、再转移到你的jsrkb1.dbf上
第1步在EXCEL2003中只要手工另存为 DBF 即可,简单
第2步、第3步需要各写一段PRG代码,有一点难度。

只求每天有一丁点儿的进步就可以了
2022-03-02 14:34
fyyylyl
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:16
帖 子:287
专家分:676
注 册:2006-5-22
得分:2 
代码可能不完美,但结果应该是你要的吧?
jsrkb1.zip (1.44 KB)


[此贴子已经被作者于2022-3-2 16:19编辑过]


2022-03-02 16:07
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:108
帖 子:2175
专家分:3785
注 册:2007-4-27
得分:0 
@fyyylyl 你给了鱼,而“王咸美”想要的是 渔。把你的 渔 ,贴上来吧

只求每天有一丁点儿的进步就可以了
2022-03-02 16:56
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:108
帖 子:2175
专家分:3785
注 册:2007-4-27
得分:6 
txt_to_dbf.rar (3.55 KB)

LS.DBF里存放着从TXT-EXCEL-另存过来的信息
依次执行“程序1.PRG”、“程序2.PRG”,后看结果
代码是按2楼的思路来写的

只求每天有一丁点儿的进步就可以了
2022-03-02 20:03
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:12 
程序代码:
CLOSE DATABASES 
USE jsrkb1
ZAP
INDEX ON nj + bj TAG njbj
lcStr = FILETOSTR("课务分工20190101.txt")
ALINES(laStr, lcStr, 4 + 1)
FOR ln1 = 1 TO ALEN(laStr, 1)
    FOR ln2 = 3 TO ALINES(la, laStr[ln1], 4 + 1, ",", CHR(9)) - 1
        lcnj = STREXTRACT(la[ln2], "", "(")
        lcbj = "(" + STREXTRACT(la[ln2], "(", "班") + "班"
        lckc = STREXTRACT(la[ln2],"班", "")
        IF SEEK(lcnj + lcbj, "jsrkb1") = .T.
            REPLACE (lckc) WITH la[2]
        ELSE 
            APPEND BLANK 
            REPLACE nj WITH lcnj, bj WITH lcbj, (lckc) WITH la[2]
        ENDIF 
    ENDFOR
ENDFOR
SELECT *, 0 xh FROM jsrkb1 INTO CURSOR lsb READWRITE 
REPLACE xh WITH ICASE(LEFT(nj, 2) == "一", 1,LEFT(nj, 2) == "二", 2, LEFT(nj, 2) == "三", 3, LEFT(nj, 2) == "四", 4,LEFT(nj, 2) == "五", 5, 6) ALL
SELECT * FROM lsb ORDER BY xh, nj, bj



坚守VFP最后的阵地
2022-03-02 22:38
王咸美
Rank: 1
等 级:新手上路
帖 子:569
专家分:0
注 册:2018-1-4
得分:0 
谢谢各位老师的鼎力相助!抽空认真学习。如能在关键处加上注释就更完美了。

[此贴子已经被作者于2022-3-3 06:07编辑过]

2022-03-03 06:04
王咸美
Rank: 1
等 级:新手上路
帖 子:569
专家分:0
注 册:2018-1-4
得分:0 
@sdta 非常感谢指点!!!美中不足的是生成的jsrkb1.dbf未能按nj和bj排序,显得有点乱。能否按nj和bj进行排序,还请帮忙解决。
2022-03-03 09:12
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:54
帖 子:802
专家分:1914
注 册:2015-12-30
得分:0 
有了结果,按需要order by 即可
2022-03-03 10:49
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:0 
以下是引用王咸美在2022-3-3 09:12:01的发言:

@sdta 非常感谢指点!!!美中不足的是生成的jsrkb1.dbf未能按nj和bj排序,显得有点乱。能否按nj和bj进行排序,还请帮忙解决。


坚守VFP最后的阵地
2022-03-03 12:14



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-508442-1-1.html




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

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