[已解决]求助如何将文本每一行字符倒序输出并base64解码
本帖最后由 user11 于 2012-5-4 15:13 编辑最近使用了一个软件,他有个配置文件,,打开乱码感觉就是BASE64编码的,于是手工找个短的行,倒过来解码,果然是base64,求助帮忙如何将一行的每个字符倒过来写!!找个半天也没有搜到!这个问题好像不难,但是有点特别。。。
比如第一行 =ATP5V2S09GS,,倒过来应该是 SG90S2V5PTA=
BASE64解码出来HotKey=0
=ATP5V2S09GS
=0TZtFmT5V2S09GS
本帖最后由 shqf 于 2012-5-4 14:46 编辑
字符串倒过来功能代码如下:#include <array.au3>
Local $Var = "ATP5V2S09GS"
Local $Array = StringRegExp($Var, "\w", 3)
_ArrayReverse($Array)
$nVar = _ArrayToString($Array,"")
MsgBox(0, "", "原字符串=" & $Var & @LF & "新字符串=" & $nVar) #Include <String.au3>
_StringReverse 非常感谢 楼上两位 解决了。。。谢谢!
#include <File.au3>
#include <String.au3>
#include <ACN_HASH.au3>
Dim $aRecords
If Not _FileReadToArray(@ScriptDir & "\test.txt", $aRecords) Then
MsgBox(4096,"Error", " Error reading log to Array error:" & @error)
Exit
EndIf
Local $str = ""
Local $hexstr
Local $i
For $i = 1 to $aRecords
$aRecords[$i] = _StringReverse($aRecords[$i])
If StringLen($aRecords[$i])>0 Then
$hexstr = _Base64Decode($aRecords[$i]) ;;;解码出0x开头的十六进制字符串
$hexstr = StringMid($hexstr, 3) ;;;去掉开头的0x
$str &= _HexToString($hexstr) & @CRLF ;;;十六进制字符串转字符串
EndIf
Next
MsgBox(0, "", $str)
页:
[1]