Ⅰ 求一段au3腳本操作txt文件的代碼
用戶自定義函數 文件管理 _FileCountLines 返回指定文件的行數.
#Include <File.au3>
_FileCountLines($sFilePath)
參數:
$sFilePath 要讀取的文件的所在路徑
讀取300行的畫 貌似沒有現成函數
的自己想了
建議用 _FileReadToArray 把整個文件 讀到 數組
(數組 一個元素 是文件的一行 內容)
找到 後 用_FileWriteFromArray 寫入文件
當前日期 可以用 時間和日期 宏 中的
@MDAY 當天屬本月的第幾天,值的范圍是 01 到 31
@MON 當前月份,值的范圍是 01到 12
#include <array.au3>
#include <File.au3>
Local $filepath = "C:\Dev-Cpp\include\stdio.h";;;;改成你自己的路徑
Local $lines = _FileCountLines($filepath)
If $lines <= 300 Then
MsgBox(0, "小於300行", "實際行數: " & $lines)
Else
If 6 = MsgBox(4, "超過300行", "是否前300行提取?") Then
Local $array
_FileReadToArray($filepath, $array)
Local $ouputfile = @DesktopCommonDir & "\" &@YEAR & "-" & @MON & "-" & @MDAY & ".txt"
_FileWriteFromArray($ouputfile, $array, 1, 300)
EndIf
EndIf
@YEAR 當前年份(4位數)
用 & 把它們拼接成字元串 做文件名
桌面用 目錄宏
@DesktopDir 當前用戶的 桌面 目錄所在路徑
@DesktopCommonDir 桌面 目錄所在路徑(例: C:\Documents and Settings\All Users\桌面)
Ⅱ au3操作txt問題
Local$srcFile="test.txt"
Local$desFile="result.txt"
IfFileExists($desFile)ThenFileDelete($desFile)
Local$file=FileOpen($srcFile,0)
If$file=-1Then
MsgBox(0,"Error","Failedtoopenfile!")
Exit
EndIf
While1
Local$line=FileReadLine($file)
If@error=-1ThenExitLoop
FileWriteLine($desFile,StringFormat("www%scom",$line))
Wend
FileClose($file)
FileMove($desFile,$srcFile,1)
測試可用。
Ⅲ autoit-v3編程高手請進
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=E:\我的文檔\工作台\學習資料\Form1.kxf
Global $Form1 = GUICreate("考試系統", 554, 507, 220, 125)
Global $Group1 = GUICtrlCreateGroup("序號:1", 16, 40, 513, 209)
Global $Label1 = GUICtrlCreateLabel("", 32, 64, 472, 40)
Global $Label2 = GUICtrlCreateLabel("A:", 32, 120, 470, 17)
Global $Label3 = GUICtrlCreateLabel("B:", 32, 152, 470, 17)
Global $Label4 = GUICtrlCreateLabel("C:", 32, 184, 464, 17)
Global $Label5 = GUICtrlCreateLabel("D:", 32, 216, 465, 17)
Global $Button1 = GUICtrlCreateButton("答案1", 32, 256, 97, 33)
Global $Button2 = GUICtrlCreateButton("答案2", 160, 256, 97, 33)
Global $Button3 = GUICtrlCreateButton("答案3", 288, 256, 89, 33)
Global $Button4 = GUICtrlCreateButton("答案4", 416, 256, 97, 33)
Global $Group2 = GUICtrlCreateGroup("基本信息", 288, 304, 233, 185)
Global $Label6 = GUICtrlCreateLabel("總題目數:100", 304, 328, 82, 17)
Global $Label7 = GUICtrlCreateLabel("已答題目:0", 304, 360, 166, 17)
Global $Label8 = GUICtrlCreateLabel("正確數量:0", 304, 392, 166, 17)
Global $Label9 = GUICtrlCreateLabel("考生答案:", 304, 424, 166, 17)
Global $Label10 = GUICtrlCreateLabel("正確答案:", 304, 456, 166, 17)
Global $Button5 = GUICtrlCreateButton("下一題", 160, 456, 97, 33)
Global $Button6 = GUICtrlCreateButton("上一題", 32, 456, 97, 33)
Global $Button7 = GUICtrlCreateButton("提交答案", 32, 312, 225, 129)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
global $already=0,$yet=100,$now,$right,$a,$b,$c,$d,$e
global $your="A",$rightnum=0
change()
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
$your="A"
Case $Button2
$your="B"
Case $Button3
$your="C"
Case $Button4
$your="D"
CASE $Button5
change()
CASE $Button6
CASE $Button7
check()
EndSwitch
WEnd
func change();選題函數
guictrlsetdata($Group1,"序號:"&$already+1)
$now=random(1,3,1);題目序號,將3修改為999就代表題庫中有999個答案
$k=iniread("題庫.ini",$now,"k","");讀取題目內容
;msgbox(0,$now,$k)
$a=iniread("題庫.ini",$now,"a","");讀取數據A
$b=iniread("題庫.ini",$now,"b","");讀取數據B
$c=iniread("題庫.ini",$now,"c","");讀取數據C
$d=iniread("題庫.ini",$now,"d","");讀取數據D
$e=iniread("題庫.ini",$now,"e","");讀取正確答案
guictrlsetdata($Label1,"題目:"&$now&@crlf&$k)
guictrlsetdata($Label2,"A:"&$a)
guictrlsetdata($Label3,"B:"&$b)
guictrlsetdata($Label4,"C:"&$c)
guictrlsetdata($Label5,"D:"&$d)
endfunc
func check();查看數據答案是否正確
guictrlsetdata($label9,"考生答案:"&$your)
guictrlsetdata($label10,"正確答案:"&StringUpper($e))
if $your=StringUpper($e) then
$rightnum=$rightnum+1
guictrlsetdata($label8,"正確數量:"&$rightnum)
endif
$already=$already+1
guictrlsetdata($label7,"已答數量:"&$already)
endfunc
==========================================================
資料庫保存在au3同目錄下"題庫.ini"裡面,裡面現在一共3個題,你自己增加。
格式如下:
[1]
k=酒後能否駕駛?
a=能
b=應該能
c=不能
d=沒規定
e=c
[2]
k=紅燈是什麼意思?
a=停
b=行
c=等
d=隨便
e=a
[3]
k=開車前方遇見上帝怎麼辦?
a=繞過去
b=壓過去
c=停下
d=下車磕頭
e=a
Ⅳ AU3大神幫看下,如何點擊窗口內的按鈕1和2,定重謝!!!
可以在(窗口1)裡面寫代碼,直接指向 (窗口2),Text1.Text = "12345",但是不建議這種模式,以後遇到的問題會更多。
建議在工程里添加模塊,自定義全局變數,比如 Public MyStr as String
你可以在(窗口1)里賦值 MyStr = "12345" ,然後在(窗口2)里直接讀取 Text1.Text = MyStr
自定義全局變數函數就是數個窗體之間的數據傳遞橋梁。
同理,你也可以在全局模塊里自定義 '資料庫的連接變數' '數據集的連接變數',兩個窗口都可以隨時操控這個全局變數的數據。
Ⅳ au3的簡介
Au3腳本,也就是AutoIt3 Windows自動安裝腳本語言。
AutoIt 是一種自動控制工具。這在PC首次展示時非常有用,那時成百上千的機器需要被自動的安裝。盡管有一些程序如 MS Office, Mcafee, IE4 等具有自動安裝的組件,可還有太多的程序不具備自動安裝的功能。那就是用到 AutoIt 的地方。AutoIt 也可以被用來在你的機器上完成簡單的任務。
AutoIt 運行時讀取一個指定的腳本文件。這個腳本文件使得 AutoIt 完成一系列操作,包括
執行程序(Windows 應用程序,DOS命令,等等。)
發出按鍵和滑鼠點擊(所有字元,不受鍵盤布局約束)。
窗口操作(例如最小化,隱藏,恢復,等待,激活(同樣適用 Win98/Win2000))。
簡單剪貼板文本操作。
最值一提的是它很小(本身包含EXE件,沒有DLL文件,沒有注冊表項)而且免費! (並且將保持免費).
2.1 版後新加入的Aut2Exe。 本程序可以從一個 AutoIt 腳本創建可執行程序!
2.21版後,你可以發送十進制 ASCII 代碼,就像 ALT 鍵加數字小鍵盤(比如 ALT+65='A') 非常有用來發送特定的字元(比如 '~' 在一個義大利鍵盤上)。
Au3腳本就是 Autoit v3 版的簡稱。
Ⅵ 請教一個au3的問題有知道的大蝦幫幫忙
用下面的代碼試試呢?
#include<Array.au3>
_ArrayDisplay($Select_Db,"資料庫所有庫屬性");顯示數組
_ArrayToClip($Select_Db,1)
MsgBox(0,"返回數組內容",ClipGet())
Ⅶ Autoit怎樣才能連接Mysql資料庫並查詢內容
Autoit怎樣才能連接MySql資料庫並查詢內容
#include <array.au3>
#include "mysql.au3"
__MySQL_ExtractEmbeddedDLL()
_MySQL_InitLibrary()
$MysqlConn = _MySQL_Init()
;方法1 開始
;$connected = _MySQL_Real_Connect($MysqlConn,"localhost","root","asdf1234","gmsj")
;If $connected = 0 Then
; $errno = _<a href="https://www..com/s?wd=MySQL_errno&tn=44039180_cpr&fenlei=-bIi4WUvYETgN-" target="_blank" class="-highlight">MySQL_errno</a>($MysqlConn)
; MsgBox(0,"Error:",$errno & @LF & _MySQL_error($MysqlConn))
; If $errno = $CR_UNKNOWN_HOST Then MsgBox(0,"Error:","$CR_UNKNOWN_HOST" & @LF & $CR_UNKNOWN_HOST)
;Endif
;MsgBox(0, "sda", "ok")
;方法1 結束
$connected = _MySQL_Real_Connect($MysqlConn, "<a href="https://www..com/s?wd=127.0.0.1&tn=44039180_cpr&fenlei=-bIi4WUvYETgN-" target="_blank" class="-highlight">127.0.0.1</a>", "root", "sssss", "data")
; _MySQL_Real_Connect($MysqlConn,"伺服器IP","賬戶","密碼","資料庫名稱")
If $connected = 0 Then Exit MsgBox(16, 'Connection Error', _MySQL_Error($MysqlConn))
$query = "SELECT * FROM CHARACTER_SETS"
_MySQL_Real_Query($MysqlConn, $query)
$res = _MySQL_Store_Result($MysqlConn)
$fields = _<a href="https://www..com/s?wd=MySQL_Num_Fields&tn=44039180_cpr&fenlei=-bIi4WUvYETgN-" target="_blank" class="-highlight">MySQL_Num_Fields</a>($res)
$rows = _<a href="https://www..com/s?wd=MySQL_Num_Rows&tn=44039180_cpr&fenlei=-bIi4WUvYETgN-" target="_blank" class="-highlight">MySQL_Num_Rows</a>($res)
MsgBox(0, "data","row:"&$rows & "-" & $fields&"ok")
Ⅷ AU3數組編輯排序問題
_FileListToArray自身就會進行排序的吧 不行的話參考_ArraySort函數
Ⅸ 如何用au3編寫軟體自動安裝
如果只是用於軟體自動安裝,那麼下面這些足夠了。
1)學會使用au3自帶的窗口信息工具來捕獲軟體安裝程序的窗口信息和控制項信息。
2)學習並掌握以下幾個函數的用法:
WinExists, WinActive, WinActivate, WinWaitActive —— 窗口操作
Sleep —— 延時操作
Send, ControlClick, ControlCommand, MouseClick —— 按鈕/單選框/復選框 控制項操作
ConsoleWrite, MsgBox —— 調試方法
如果想要能用於Win7/Vista帶用戶許可權控制的OS,記得在腳本開頭加 #RequireAdmin
3)學習並掌握條件判斷語句(if)的結構,循環語句(while)的結構。
Ⅹ Autoit怎樣才能連接MySql資料庫並查詢內容
您好,很高興為您解答。
#include<array.au3>
#include"mysql.au3"
__MySQL_ExtractEmbeddedDLL()
_MySQL_InitLibrary()
$MysqlConn=_MySQL_Init()
;方法1開始
;$connected=_MySQL_Real_Connect($MysqlConn,"localhost","root","asdf1234","gmsj")
;If$connected=0Then
;$errno=_MySQL_errno($MysqlConn)
;MsgBox(0,"Error:",$errno&@LF&_MySQL_error($MysqlConn))
;If$errno=$CR_UNKNOWN_HOSTThenMsgBox(0,"Error:","$CR_UNKNOWN_HOST"&@LF&$CR_UNKNOWN_HOST)
;Endif
;MsgBox(0,"sda","ok")
;方法1結束
$connected=_MySQL_Real_Connect($MysqlConn,"127.0.0.1","root","sssss","data")
;_MySQL_Real_Connect($MysqlConn,"伺服器IP","賬戶","密碼","資料庫名稱")
If$connected=0ThenExitMsgBox(16,'ConnectionError',_MySQL_Error($MysqlConn))
$query="SELECT*FROMCHARACTER_SETS"
_MySQL_Real_Query($MysqlConn,$query)
$res=_MySQL_Store_Result($MysqlConn)
$fields=_MySQL_Num_Fields($res)
$rows=_MySQL_Num_Rows($res)
MsgBox(0,"data","row:"&$rows&"-"&$fields&"ok")
如若滿意,請點擊右側【採納答案】,如若還有問題,請點擊【追問】
希望我的回答對您有所幫助,望採納!
~O(∩_∩)O~