minbiao 发表于 2010-6-18 19:57:54

如何 读取ini的关键字 对比txt 如果相同的就修改txt的内容[已解决]

本帖最后由 minbiao 于 2010-6-30 16:21 编辑

比如:
1.ini
[配置]
12=34
56=78
--------------------------
2.txt
124856333668
--------------------------
读取1.ini的关键字,对比2.txt的内容,如果相同就修改2.txt 的内容
修改后2.txt的内容为:
344878333668

问下各位大大,应该如何写?谢谢....

afan 发表于 2010-6-18 20:20:46

如果 2.txt 为 312456563668 的话,期望得到什么结果?
312478783668 还是 334478783668

minbiao 发表于 2010-6-18 20:27:34

本帖最后由 minbiao 于 2010-6-18 20:31 编辑

期望得到334478783668

嘿嘿! 版主我在线等您回复!

afan 发表于 2010-6-18 20:41:47

$txt = FileRead('2.txt')
$ini = IniReadSection('1.ini', '配置')
If @error Then Exit
For $i = 1 To $ini
        $txt = StringReplace($txt, $ini[$i], $ini[$i])
Next
$fo = FileOpen('2.txt', 2)
FileWrite($fo, $txt)
FileClose($fo)
ShellExecute('2.txt')

minbiao 发表于 2010-6-18 21:01:33

谢谢版主!...

minbiao 发表于 2010-6-18 21:12:57

嘿嘿! 试过了! 非常好用...谢谢版主!

yejier1983 发表于 2010-6-18 22:49:54

新手,跟着学习学习

minbiao 发表于 2010-6-19 01:45:23

如果要修改一个文件夹下的全部txt的话, 要该怎么写?

afan 发表于 2010-6-19 01:52:26

_FileListToArray()
再循环逐个处理

minbiao 发表于 2010-6-19 02:37:56

小弟不才! 望版主详解!

chenronting 发表于 2010-6-19 11:17:09

回复 10# minbiao


    可以参考我的那个帖子 关于_FileListToArray() 的使用
http://www.autoitx.com/thread-11203-1-1.html

minbiao 发表于 2010-6-19 11:52:21

搞了一下没能搞出来, 大大们帮帮忙!

autoit3CN 发表于 2010-6-19 12:03:40

搞了一下没能搞出来, 大大们帮帮忙!
minbiao 发表于 2010-6-19 11:52 http://www.autoitx.com/images/common/back.gif


    那就再搞多几下就会出来了,自己找答案更有成就感

minbiao 发表于 2010-6-19 14:53:16

$txt = _FileListToArray(@ScriptDir & "\文件","*.txt",1)
$ini = IniReadSection("2.ini", "配置")
If @error Then Exit

For $i = 1 To $txt
      $is = FileRead($i)这样写对吗?接下去应该怎么写?

afan 发表于 2010-6-19 15:20:31

自己试过了再看下面的代码#include <File.au3>

$ini = IniReadSection('1.ini', '配置')
If @error Then Exit MsgBox(0, 1, @error)
$Dir = @ScriptDir & '\文件'
$File = _FileListToArray($Dir, '*.txt', 1)
If @error Then Exit MsgBox(0, 2, @error)
For $i = 1 To $File
        $s_File = $Dir & '\' & $File[$i]
        $txt = FileRead($s_File)
        For $ii = 1 To $ini
                $txt = StringReplace($txt, $ini[$ii], $ini[$ii])
        Next
        $fo = FileOpen($s_File, 2)
        FileWrite($fo, $txt)
        FileClose($fo)
Next
MsgBox(64, '完成', '已处理完成 ' & $File & ' 个文件 ')
页: [1] 2
查看完整版本: 如何 读取ini的关键字 对比txt 如果相同的就修改txt的内容[已解决]