本帖最后由 dtooboss 于 2013-9-28 08:12 编辑
文件A格式如下(大约10万行)120@@@@ACH_TITLE_25@@@@Silverware@@@@银牌
121@@@@ACH_TITLE_26@@@@Control@@@@控制
122@@@@ACH_TITLE_27@@@@You Got Mail@@@@你有邮件来了
123@@@@ACH_TITLE_28@@@@Rising Star@@@@冉冉升起的新星
124@@@@ACH_TITLE_29@@@@Bros Gonna Bro@@@@无基不欢
125@@@@ACH_TITLE_3@@@@Beast Mode@@@@野兽模式
126@@@@ACH_TITLE_30@@@@Friends Forever@@@@永远的朋友
127@@@@ACH_TITLE_31@@@@Moving On Up@@@@天天向上
128@@@@ACH_TITLE_32@@@@Just Dropped In@@@@碰巧路过
129@@@@ACH_TITLE_33@@@@Bling Bling@@@@闪亮
130@@@@ACH_TITLE_34@@@@Best Friends Forever@@@@永远的好朋友
131@@@@ACH_TITLE_35@@@@On Your Way@@@@在你的路上
132@@@@ACH_TITLE_36@@@@Teamwork@@@@团队合作
133@@@@ACH_TITLE_37@@@@Challenging@@@@挑战中
134@@@@ACH_TITLE_38@@@@Big Game@@@@盛大的比赛
135@@@@ACH_TITLE_39@@@@On My Own@@@@一己之力
136@@@@ACH_TITLE_4@@@@Seconds, Please@@@@就几秒钟,求你了
137@@@@ACH_TITLE_40@@@@Thanks, Tips@@@@谢谢,这是小费
138@@@@ACH_TITLE_41@@@@From Me To You@@@@真情传递
139@@@@ACH_TITLE_42@@@@Skills to Pay the Bills@@@@赚钱能力
140@@@@ACH_TITLE_43@@@@Cup For Two@@@@两个人的奖杯
141@@@@ACH_TITLE_44@@@@It's Mine Now@@@@现在是我的了
142@@@@ACH_TITLE_45@@@@Started From The Bottom…@@@@从底层坐起……
143@@@@ACH_TITLE_46@@@@Maxed Out@@@@刷爆
在文件 B.txt 中查找 A.txt 中每行的英文内容并替换为指定字符串
B.TXT 的格式如下 (10万行左右)ACH_TITLE_18@@@@Fuel For My Club@@@@
ACH_TITLE_19@@@@Collecting Silverware@@@@
ACH_TITLE_2@@@@What a Hit, Son!@@@@
ACH_TITLE_20@@@@Hey Look, a Free Gold Pack!@@@@
ACH_TITLE_21@@@@Passing on the Armband@@@@
ACH_TITLE_22@@@@Long Term Signing@@@@
ACH_TITLE_23@@@@First Mission@@@@
ACH_TITLE_24@@@@You Struck Gold!@@@@
ACH_TITLE_25@@@@Silverware@@@@
ACH_TITLE_26@@@@Control@@@@
ACH_TITLE_27@@@@You Got Mail@@@@
ACH_TITLE_28@@@@Rising Star@@@@
ACH_TITLE_29@@@@Bros Gonna Bro@@@@
ACH_TITLE_3@@@@Beast Mode@@@@
ACH_TITLE_30@@@@Friends Forever@@@@
ACH_TITLE_31@@@@Moving On Up@@@@
ACH_TITLE_32@@@@Just Dropped In@@@@
ACH_TITLE_33@@@@Bling Bling@@@@
ACH_TITLE_34@@@@Best Friends Forever@@@@
ACH_TITLE_35@@@@On Your Way@@@@
ACH_TITLE_36@@@@Teamwork@@@@
ACH_TITLE_37@@@@Challenging@@@@
ACH_TITLE_38@@@@Big Game@@@@
ACH_TITLE_39@@@@On My Own@@@@
ACH_TITLE_4@@@@Seconds, Please@@@@
ACH_TITLE_40@@@@Thanks, Tips@@@@
ACH_TITLE_41@@@@From Me To You@@@@
ACH_TITLE_42@@@@Skills to Pay the Bills@@@@
ACH_TITLE_43@@@@Cup For Two@@@@
ACH_TITLE_44@@@@It's Mine Now@@@@
以下是我写的简单脚本#include <file.au3>
#include <Array.au3>
#include <string.au3>
$file = 'A.txt'
$lin = _FileCountLines($file)
$rfile = FileOpen('B.txt', 32)
$wfile = FileRead($rfile)
For $x = $lin To 1 Step -1
$str = FileReadLine($file, $x)
$stra = StringSplit($str, '@@@@', 1)
If $stra[0] = 4 Then
$wfile = StringReplace($wfile, '@@@@' & $stra[3] & '@@@@', '####' & $stra[3] & '####' & $stra[4])
EndIf
ConsoleWrite($x & @CRLF)
Next
FileClose($rfile)
$ofile = FileOpen('C.txt', 34)
FileWrite($ofile, $wfile)
FileClose($ofile)
在文件 B.txt 中查找 A.txt 中每行的英文内容并替换为指定字符串后
最后输出为C.txt
注: A 文件和B 文件 行数 顺序 大小 都不相同
竟然跑了6小时~~~,也尝试过用数组,一样慢。
求大家给想想办法~
付文件:
|