| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1040 人关注过本帖
标题:求助:如何修改文本文件指定行的内容
只看楼主 加入收藏
zhaojb
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-3-24
收藏
 问题点数:0 回复次数:2 
求助:如何修改文本文件指定行的内容
如何修改文本文件指定行的内容
比如:
我想修改文本文件第三行的内容,无论第三行是什么内容。把它修改为:aaa bbb

[[it] 本帖最后由 zhaojb 于 2008-3-25 10:48 编辑 [/it]]
搜索更多相关主题的帖子: 文本文件 
2008-03-25 10:25
编程之星
Rank: 5Rank: 5
等 级:职业侠客
威 望:2
帖 子:285
专家分:391
注 册:2007-4-10
收藏
得分:0 
用这样的算法来试试吧
基于简单实用的原因,这里用到FSO来操作文本文件,里面还要用到数组的开销,所以算法效率不是很高,如果是操作巨大的文本文件的话,那也许需要酌情考虑了。
程序界面如下:
图片附件: 游客没有浏览图片的权限,请 登录注册

源代码如下:
Private Sub Command1_Click()
    '************************************************************
    '先在程序所在的文件夹下建立TEST.txt文本文件并输入几行内容
    '在窗体上添加两个文本框(Text1和Text2),一个命令按钮(Command1)
    'Text1.Text输入的是要修改的行号
    'Text2.Text输入的是新的修改内容
    'Code by 编程之星 2008.3.25 下午
    '************************************************************

    Dim LineArr() As String [color=Green]'所有行文本
    Dim FSO As Object
    Set FSO = CreateObject("Scripting.FileSystemObject")
    Set TXTfile = FSO.GetFile(App.Path + "\TEST.txt")
    Set TextStrem = TXTfile.OpenAsTextStream(1)
    Dim i As Integer '行号
    Do While Not TextStrem.AtEndOfStream
        i = i + 1
        ReDim Preserve LineArr(1 To i)
        If i = CInt(Trim(Text1.Text)) Then
            TextStrem.SkipLine
        Else
            LineArr(i) = TextStrem.ReadLine
        End If
    Loop
        LineArr(CInt(Trim(Text1.Text))) = Text2.Text
    Set TextStrem = TXTfile.OpenAsTextStream(2)
    For Each l In LineArr
        TextStrem.WriteLine l
    Next
    MsgBox "成功修改指定行的内容"
End Sub[/color]

[[it] 本帖最后由 编程之星 于 2008-3-25 15:04 编辑 [/it]]

怎么越学就觉得自己越笨
2008-03-25 14:53
zhaojb
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2008-3-24
收藏
得分:0 
非常感谢 问题解决
2008-03-25 15:30
快速回复:求助:如何修改文本文件指定行的内容
数据加载中...
 
   



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

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