ist das möglich?
_FileWriteFromArray($sFilePath2, _ArrayUnique($lines_A), 1, 1) macht das nicht
ist das möglich?
_FileWriteFromArray($sFilePath2, _ArrayUnique($lines_A), 1, 1) macht das nicht
Was soll _arrayUnique denn sein?
ISt garnicht in der Hilfe dabei <.<
löscht leerzeilen aus dem array, ist aber eigentlich nur ein bsp gewesen ... bei
_FileWriteFromArray($sFilePath2, $lines_A, 1, 1)
besteht das gleiche prob =)
ist der pfad sicher richtig
ist $lines_A sicher ein array? (_arrayDisplay checken)
was ist der fehler @scite
das prob ist nicht, dass es nicht funktioniert.
ich schreibe das array in eine txt-datei und vergleiche diese später mit einer weiteren auf gleiche einträge.
jedoch wird auch immer $array[0] mit in die txt-dateien geschrieben, die aber immer unterschiedlich sind. $array[0] benötige ich nicht und verfälscht mir mein vorhaben, deswegen suche ich ne möglichkeit, dass es nicht mit in die txt-dateien geschrieben wird.
versteh' ichs falsch?
bei:
#include <array.au3>
#include <File.au3>
$array = _ArrayCreate("a","b","c","d")
_FileWriteFromArray(@ScriptDir & "\array.txt", $array)
wird mir NUR a
b
c
d
in die .txt geschrieben
Hi,
bei mir geht es einwandfrei.
So long,
Mega
Jain ...
weil bei dir $array[0] = a ist
aber wenn ich _FileReadToArray mache, enthält $array[0] die anzahl der arrays die existieren. die erste zeile der txt ist erst in $array[1] enthalten.
hoffe das ist so verständlich =)
um es mal genauer zu machen
Func _NewUser()
_FileReadToArray($sFilePath, $lines_A)
_FileWriteFromArray($sFilePath5, $lines_A)
For $i = UBound($lines_A) - 1 To 1 Step - 1
If Not StringRegExp($lines_A[$i], '230 Logged on', 0) Then
_ArrayDelete($lines_A, $i)
Else
If StringRegExp($lines_A[$i], 'not logged in', 0) Then
_ArrayDelete($lines_A, $i)
Else
$cutnr = StringMid($lines_A[$i], 1, 9)
$trim = StringMid($lines_A[$i], 9)
$trimright = StringTrimLeft($trim, 11)
$trimright2 = StringTrimRight($trimright, 15)
$final = _StringInsert($cutnr, $trimright2,
_ArrayAdd($lines_A, $final)
_ArrayDelete($lines_A, $i)
EndIf
EndIf
Next
_FileWriteFromArray($sFilePath2, $lines_A)
_FileReadToArray($sFilePath2, $lines_A)
_FileWriteFromArray($sFilePath2, _ArrayUnique($lines_A))
If @error Then
Else
$user = FileReadLine($sFilePath2, 1)
$trimnow = StringMid($user, 9)
If $user = $olduser Then
Else
$olduser = $user
SplashTextOn("", "Log On: " & $trimnow, 350, 30, 671, 705, 1 + 32, "Lucida Console", 10)
TraySetIcon()
Sleep(3000)
SplashOff( )
EndIf
EndIf
EndFunc
Func _UserLogOff()
_FileReadToArray($sFilePath, $lines_A)
For $i = UBound($lines_A) - 1 To 1 Step - 1
If Not StringRegExp($lines_A[$i], 'disconnected.', 0) Then
_ArrayDelete($lines_A, $i)
Else
If StringRegExp($lines_A[$i], 'not logged in', 0) Then
_ArrayDelete($lines_A, $i)
Else
$cutnr = StringMid($lines_A[$i], 1, 9)
$trim = StringMid($lines_A[$i], 9)
$trimright = StringTrimLeft($trim, 11)
$trimright2 = StringTrimRight($trimright, 15)
$final = _StringInsert($cutnr, $trimright2,
_ArrayAdd($lines_A, $final)
_ArrayDelete($lines_A, $i)
EndIf
EndIf
Next
_FileWriteFromArray($sFilePath3, $lines_A, 1)
_FileReadToArray($sFilePath3, $lines_A)
_FileWriteFromArray($sFilePath3, _ArrayUnique($lines_A), 1)
If @error Then
Else
$user2 = FileReadLine($sFilePath3, 1)
$trimnow2 = StringMid($user2, 9)
If $user2 = $olduser2 Then
Else
$olduser2 = $user2
SplashTextOn("", "Log Off: " & $trimnow2, 350, 30, 671, 705, 1 + 32, "Comic Sans MS", 10)
Sleep(3000)
SplashOff( )
EndIf
EndIf
EndFunc
Func _TrayView()
_FileReadToArray($sFilePath2, $lines_A)
For $i = UBound($lines_A) - 1 To 1 Step - 1
If Not StringRegExp($lines_A[$i], '[^\s]', 0) Then
_ArrayDelete($lines_A, $i)
Else
$cutnr = StringMid($lines_A[$i], 1,
_ArrayAdd($lines_A, $cutnr)
_ArrayDelete($lines_A, $i)
EndIf
Next
_ArrayDelete($lines_A, 0)
_FileReadToArray($sFilePath3, $lines_B)
For $i = UBound($lines_B) - 1 To 1 Step - 1
If Not StringRegExp($lines_B[$i], '[^\s]', 0) Then
_ArrayDelete($lines_B, $i)
Else
$cutnr = StringMid($lines_B[$i], 1,
_ArrayAdd($lines_B, $cutnr)
_ArrayDelete($lines_B, $i)
EndIf
Next
_ArrayDelete($lines_B, 0)
_Array2DJoin($lines_A, $lines_B)
_FileWriteFromArray($sFilePath4, $lines_A)
_FileReadToArray($sFilePath4, $lines_A)
_FileWriteFromArray($sFilePath4, _ArrayTotalUnique($lines_A), 1)
_FileReadToArray($sFilePath4, $lines_A)
_FileWriteFromArray($sFilePath4, _ArrayUnique($lines_A), 1)
If $lines_A[0] = 0 Then
TraySetToolTip("no user online")
TraySetIcon("FileZilla Server.exe")
Else
TraySetToolTip($lines_A[0] & " user(s) Online")
TraySetIcon()
EndIf
EndFunc
hier werden 2 txt dateien erstellt, die nacher verglichen werden sollen. das ganze klappt aber nicht korrekt, da jeweils in die beiden ersten txts noch $array[0] geschrieben wird. aber _ArrayDelete funzt irgendwie auch nicht (es kann vorkommen dass nur noch $array[0] existiert, lösch ich das dann, erstellt er einen neuen eintrag).
bzw, wenn es nicht geht, $array[0] nicht in die txt zu schreiben, könnte man ne auswahl machen, wenn $array[1] existiert oder leer ist?
teilweise gibt es $array[1], aber ohne das was drin steht, teilweise gibt es das nicht ...
Dann mach ne FOR schleife :
#cs ----------------------------------------------------------------------------
AutoIt Version: 3.2.4.9
Author: myName
Script Function:
Template AutoIt script.
#ce ----------------------------------------------------------------------------
; Script Start - Add your code below here
#include <array.au3>
#include <File.au3>
$array = _ArrayCreate("a","b","c","d")
For $i = 1 to $array[0]
FileWrite(@ScriptDir & "\txt.txt", $array[$i])
Next
sollte gehen
geht leider nicht, wie man am script oben erahnen könnte.
ich les ne txt in nen array. lösche leere und einträge, die einen bestimmten string nicht enthalten.
wurden 6 zeilen eingelesen und ich habe 6 zeilen gelöscht, würde ich $array[0] = 6 haben, aber keinen weiteren array.
Hi,
also die Funktionen funktionieren. Da muss ein Logikfehler enthalten sein.
So long,
Mega
also so wie es da oben steht, kommt das an txts heraus
Hi!
_ArrayUnique($lines_A) wird nach Ausführung durch seinen Rückgabewert ersetzt. Der wird dann in die Datei geschrieben. Wie praktisch alle Array-Funktionen wird das übergebene Array direkt bearbeitet ("ByRef") und Erfolg mit 0 oder 1 über den Rückgabewert gemeldet.
[autoit]_ArrayUnique($lines_A)
_FileWriteFromArray($sFilePath2, $lines_A, 1, 1)
peethebee
leider bin ich da nicht so fit drin, aber würde es (überhaupt) was ändern, es so zu schreiben? (wenn ja, hab ich noch net verstanden wieso *g*)