找回密码  加入

AUTOIT CN

搜索
查看: 118|回复: 2

写文件的时候空格有些没写进去,请问咋处理

[复制链接]
发表于 2021-10-13 20:39:01 | 显示全部楼层 |阅读模式
本帖最后由 xz00311 于 2021-10-14 08:56 编辑
  1. <pre style="color: rgb(0, 0, 0); white-space: pre-wrap;">140.82.114.25                 alive.github.com
  2. 140.82.112.26                 live.github.com
  3. 185.199.108.154               github.githubassets.com
  4. 140.82.113.22                 central.github.com
  5. 185.199.108.133               desktop.githubusercontent.com
  6. 185.199.108.153               assets-cdn.github.com
  7. 185.199.108.133               camo.githubusercontent.com
  8. 185.199.108.133               github.map.fastly.net
  9. 199.232.69.194                github.global.ssl.fastly.net
  10. 140.82.114.3                  gist.github.com
  11. 185.199.108.153               github.io
  12. 140.82.113.4                  github.com
  13. 192.0.66.2                    github.blog
  14. 140.82.114.5                  api.github.com
  15. 185.199.108.133               raw.githubusercontent.com
  16. 185.199.108.133               user-images.githubusercontent.com
  17. 185.199.108.133               favicons.githubusercontent.com
  18. 185.199.108.133               avatars5.githubusercontent.com
  19. 185.199.108.133               avatars4.githubusercontent.com
  20. 185.199.108.133               avatars3.githubusercontent.com
  21. 185.199.108.133               avatars2.githubusercontent.com
  22. 185.199.108.133               avatars1.githubusercontent.com
  23. 185.199.108.133               avatars0.githubusercontent.com
  24. 185.199.108.133               avatars.githubusercontent.com
  25. 140.82.112.10                 codeload.github.com
  26. 52.217.111.4                  github-cloud.s3.amazonaws.com
  27. 52.217.97.36                  github-com.s3.amazonaws.com
  28. 52.217.94.212                 github-production-release-asset-2e65be.s3.amazonaws.com
  29. 52.216.249.156                github-production-user-asset-6210df.s3.amazonaws.com
  30. 52.217.38.172                 github-production-repository-file-5c1aeb.s3.amazonaws.com
  31. 185.199.108.153               githubstatus.com
  32. 64.71.144.202                 github.community
  33. 23.100.27.125                 github.dev
  34. 185.199.108.133               media.githubusercontent.com</pre>
复制代码

写的时候回变成这个样子,如果写文件的时候能像上面这样的才不会乱
140.82.114.25                 alive.github.com
140.82.112.26                 live.github.com
185.199.108.154               github.githubassets.com
140.82.113.22                 central.github.com
185.199.108.133               desktop.githubusercontent.com
185.199.108.153               assets-cdn.github.com
185.199.108.133               camo.githubusercontent.com
185.199.108.133               github.map.fastly.net
199.232.69.194                github.global.ssl.fastly.net
140.82.114.3                  gist.github.com
185.199.108.153               github.io
140.82.114.4                  github.com
192.0.66.2                    github.blog
140.82.114.6                  api.github.com
185.199.108.133               raw.githubusercontent.com
185.199.108.133               user-images.githubusercontent.com
185.199.108.133               favicons.githubusercontent.com
185.199.108.133               avatars5.githubusercontent.com
185.199.108.133               avatars4.githubusercontent.com
185.199.108.133               avatars3.githubusercontent.com
185.199.108.133               avatars2.githubusercontent.com
185.199.108.133               avatars1.githubusercontent.com
185.199.108.133               avatars0.githubusercontent.com
185.199.108.133               avatars.githubusercontent.com
140.82.114.9                  codeload.github.com
52.217.97.36                  github-com.s3.amazonaws.com
52.217.94.212                 github-production-release-asset-2e65be.s3.amazonaws.com
52.216.249.156                github-production-user-asset-6210df.s3.amazonaws.com
52.217.38.172                 github-production-repository-file-5c1aeb.s3.amazonaws.com
185.199.108.153               githubstatus.com
64.71.144.202                 github.community
23.100.27.125                 github.dev
185.199.108.133               media.githubusercontent.com
下面是源代码,写文件的时候会把字符串没有对齐,这样hosts文件就会乱了不美观,建议运行代码之前自己手动备份hosts文件,第一次必须手动把这个添加hosts先

#include <INet.au3>
#include <String.au3>
#include <File.au3>


bbhdb()

;~ MsgBox(0,"1",@SystemDir & "\drivers\etc")

Func bbhdb();判断网络规则和本地规则
        $HBD = _StringToHex(BDGITBB())
        $HWL = _StringToHex(WLGITBB())
        If $HWL <= $HBD Then
                 MsgBox(0,"GitHub520","GitHub520已经是最新" & @CRLF & "新版本   :" & WLGITBB() & @CRLF & "本地版本:" & BDGITBB())
                 Exit
         Else
                 HPXGZ()
        EndIf
EndFunc   ;==>bbhdb

Func HPXGZ()
        Local $aFiles = @SystemDir & "\drivers\etc\hosts"
;~         Local $aFiles =  @ScriptDir & "\hosts" ;文本路径
        $aFile=FileOpen($aFiles)
        $aFileStrings=FileRead($aFile)
        $sString = StringReplace($aFileStrings,BDGITGZ(),WLGITGZ())
        FileClose(FileOpen($aFiles, 2))
        FileDelete($aFiles)
        FileWrite(@SystemDir & "\drivers\etc\hosts.txt",$sString)
        ConsoleWrite($sString & @CRLF)  
EndFunc
       

Func WLGITBB();获取网络时间版本
                $str = BinaryToString(_INetGetSource('https://raw.hellogithub.com/hosts'), 4)
                If StringRegExp($str, 'Update time: (\d+-.+\d+)') Then
                        $down = StringRegExp($str, 'Update time: (\d+-.+\d+)', 3)
                        $zfccd = StringLen($down[0])
                        $zfc = StringInStr($down[0], "+")
                        If $zfc = "0" Then
                                MsgBox(64, "对不起", "日期时间解析失败",5)
                                Exit
                        Else
                                $sczfcsl = $zfccd - $zfc +1
                                $sjcs = StringTrimRight($down[0],$sczfcsl)
                                $sjth = StringReplace($sjcs,"T"," ")
                                $wlsjcc = _DateDiff('s', "1970/01/01 08:00:00", $sjth)       
                        EndIf       
                         Return $wlsjcc

                Else
                        MsgBox(64, "对不起", "获取时间失败!",5)
                        Exit
                EndIf
EndFunc
       
Func BDGITBB();获取本地时间版本
        $IniFile = @SystemDir & "\drivers\etc\hosts" ;文本路径
        $aFile = FileOpen($IniFile)
        $aFileStrings = FileRead($aFile)
        If StringRegExp($aFileStrings, 'Update time: (\d+-.+\d+)') Then
                        $down = StringRegExp($aFileStrings, 'Update time: (\d+-.+\d+)', 3)
                        $zfccd = StringLen($down[0])
                        $zfc = StringInStr($down[0], "+")
                        If $zfc = "0" Then
                                MsgBox(64, "对不起", "日期时间解析失败",5)
                                Exit
                        Else
                                $sczfcsl = $zfccd - $zfc +1
                                $sjcs = StringTrimRight($down[0],$sczfcsl)
                                $sjth = StringReplace($sjcs,"T"," ")
                                $wlsjcc = _DateDiff('s', "1970/01/01 08:00:00", $sjth)       
                        EndIf       
                         Return $wlsjcc
                Else
                        MsgBox(64, "对不起", "本地文件获取失败",5)
                        Exit
                EndIf
        FileClose($aFile)       
EndFunc        

Func WLGITGZ();获取本地GIT规则
        $aFileStrings= BinaryToString(_INetGetSource('https://raw.hellogithub.com/hosts'), 4)
        $splitaFileStrings=StringSplit($aFileStrings,"# GitHub520 Host Start",1);获取wdigest值
For $i=1 To $splitaFileStrings[0];可以通过$i得出来的值来判断你需要的值第几次出现。如wdigest的值是第二次出现所以把$i改成2
     $pw = $splitaFileStrings[2];2是获取wdigest后面值
Next
$pws=StringSplit($pw,"# GitHub520 Host End",1);获取credman值
For $i=1 To $pws[0];可以通过$i得出来的值来判断你需要的值第几次出现。如credman的值是第一次出现所以把$i改成1
      $pwsd = $pws[1];1获取credman前面的制
  Next
  FileWrite(@ScriptDir & "\hosts.txt",$pwsd)
Return $pwsd
EndFunc   ;==>BDCJXGZ

Func BDGITGZ();获取本地GIT规则
        Local $aFiles = @SystemDir & "\drivers\etc\hosts"
        $aFile=FileOpen($aFiles)
        $aFileStrings=FileRead($aFile)
       
        $splitaFileStrings=StringSplit($aFileStrings,"# GitHub520 Host Start",1);获取wdigest值
For $i=1 To $splitaFileStrings[0];可以通过$i得出来的值来判断你需要的值第几次出现。如wdigest的值是第二次出现所以把$i改成2
     $pw = $splitaFileStrings[2];2是获取wdigest后面值
Next
$pws=StringSplit($pw,"# GitHub520 Host End",1);获取credman值
For $i=1 To $pws[0];可以通过$i得出来的值来判断你需要的值第几次出现。如credman的值是第一次出现所以把$i改成1
      $pwsd = $pws[1];1获取credman前面的制
  Next

FileClose($aFile)
Return $pwsd
EndFunc   ;==>BDCJXGZ

发表于 2021-10-13 21:12:31 | 显示全部楼层
没有中文就用长度呗,都是固定宽度。
发表于 2021-10-13 21:43:43 | 显示全部楼层
怎么写的不说
用两个@TAB空格
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|小黑屋|手机版|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2021-10-24 16:32 , Processed in 0.171875 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表