VBScript: Textdatei Zeilenweise auslesen

PAHO

Grünschnabel
Hallo,

erst mal vorweg, bin absoluter Anfänger und kenne mich sogut wie überhaupt nicht aus mit den VBS Befehlen.
Ich brauche das Script für ein anderes Programm das mir durch das Script die Werte zur verfügung stellt die wiederum ein anderes Programm rausschickt.

Hier mal mein Code (wurde teils von fertigen für das Programm übernommen, sollte also so aufgebaut sein):
Code:
FILENAME="D:\backupi\040222\Eigene Dateien\fom.txt"

line1 = "Fan 1 Spannung"
line2 = "Fan 2 Spannung"
line3 = "Fan 3 Spannung"
line4 = "Fan 4 Spannung"
line5 = "Fan 1 Drehzahl"
line6 = "Fan 2 Drehzahl"
line7 = "Fan 3 Drehzahl"
line8 = "Fan 4 Drehzahl"
line9 = "Durchfluss"
line10 = "Sensor 1"
line11 = "Sensor 2"
line12 = "Sensor 3"
line13 = "Sensor 4"
line14 = "Sensor 5"
line15 = "Sensor 6"
line16 = "12V Schiene"
line17 = "5V Schiene"

function Fan1Spannung()
	Fan1Spannung = getInfo(line1)
end function

function Fan2Spannung()
	Fan2Spannung = getInfo(line2)
end function

function Fan3Spannung()
	Fan3Spannung = getInfo(line3)
end function

function Fan4Spannung()
	Fan4Spannung = getInfo(line4)
end function

So, natürlich funktioniert das nicht aber ich hoffe irgendjemand kann mir weiter helfen.

Vielen dank schon mal,
Gruss Patrick
 
- So jetzt bin ich etwas weiter...nur werden mir die gesammten Zeilen ausgespuckt. Jetzt ist guter Rat teuer, oder ? :)

Code:
FILENAME="D:\backupi\040222\Eigene Dateien\fom.txt"

line1 = "Fan 1 Spannung"
line2 = "Fan 2 Spannung"
line3 = "Fan 3 Spannung"
line4 = "Fan 4 Spannung"
line5 = "Fan 1 Drehzahl"
line6 = "Fan 2 Drehzahl"
line7 = "Fan 3 Drehzahl"
line8 = "Fan 4 Drehzahl"
line9 = "Durchfluss"
line10 = "Sensor 1"
line11 = "Sensor 2"
line12 = "Sensor 3"
line13 = "Sensor 4"
line14 = "Sensor 5"
line15 = "Sensor 6"
line16 = "12V Schiene"
line17 = "5V Schiene"

function Fan1Spannung()
	Fan1Spannung = getInfo(line1)
end function

function Fan2Spannung()
	Fan2Spannung = getInfo(line2)
end function

function Fan3Spannung()
	Fan3Spannung = getInfo(line3)
end function

function Fan4Spannung()
	Fan4Spannung = getInfo(line4)
end function

private function getInfo(text)
	information = readfile()
	getInfo = information
end function

private function readfile()

	Set fs = CreateObject ("Scripting.FileSystemObject")
        If (fs.FileExists(FILENAME)) Then
		Set filePath = fs.GetFile(FILENAME)
		set File = filePath.OpenAsTextStream (1, -2)

		info = file.readall

		File.Close

		Set filePath = nothing
		Set fs = nothing
		Set File = nothing

	Else 
		readfile = "Bad filename"
		Exit Function
        End If

	readFile = info
end function
 
Schau dir mal die Methoden SkipLine/ReadLine an.

Mit SkipLine kannst du eine Zeile weiterspringen, mit ReadLine eine einzelne Zeile lesen.
Du musst also nur solange per SkipLine in den Zeilen weiterspringen, bis du bei der betreffenden angelangt bist, um sie dann per ReadLine auszulesen.

Alternativ kannst du auch die Datei per ReadAll auslesen und dann anhand des Zeilenumbruchs splitten.
In dem daraus resultierenden Array hast du dann die einzelnen Zeilen der Datei....auf welche du dann bequem zugreifen kannst....wäre in deinem Fall wahrscheinlich die sinnvollere Vorgehensweise.
 
Zurück