Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

VBScript einen Wert aus einer TXT auslesen und in eine Variable speichern

Frage Entwicklung VB for Applications

Mitglied: pictop

pictop (Level 1) - Jetzt verbinden

14.07.2011 um 08:55 Uhr, 10370 Aufrufe, 6 Kommentare

Guten Tag,

Da ich diese Woche das erste mal mit VBScript beschäftige habe hab ich leider nicht viel Ahnung von den ganzen.

Ich bräuchte eure Hilfe und zwar habe ich mit einen VBS einen wert einer Variable in einer TXT gespeichert. Ich möchte jetzt mit einen anderen Script diesen wert wider Auslesen und in eine andere Variable gespeichert werden.

Ausgelesen sollte immer die ganze TXT Datei werden (es handelt sich um 2 - 3 Wörter).


Ich wäre sehr froh, wen ihr mir helfen könntet.




Vielen Vielen dank,
Pictop
Mitglied: ackerdiesel
14.07.2011 um 09:37 Uhr
Hallo,
ungefär so:

Dim Variable As String = My.Computer.FileSystem.ReadAllText(Txt-Datei)

Gruß
ackerdiesel
Bitte warten ..
Mitglied: pictop
14.07.2011 um 13:35 Uhr
Hmm scheint nicht zu funktionieren kommt einen Fehler..

Name redefined



01.
 
02.
Public Variable 
03.
 
04.
 
05.
Dim Variable As String = My.Computer.FileSystem.ReadAllText("C:\Users\Public\OfficeProfil.txt") 
06.
 
07.
 
08.
Dim ObjShell 
09.
		Set ObjShell = CreateObject("WScript.Shell") 
10.
	ObjShell.RegWrite "HKEY_CURRENT_USER.........", Variable 
11.
 

In grunde möchte ich den inhalt der Txt in einer Reg feil abspeichern.

Danke für deine Hilfe.


Pictop
Bitte warten ..
Mitglied: mathe172
14.07.2011 um 14:44 Uhr
Hallo,

zuerst mal:
Dim Variable As String = My.Computer.FileSystem.ReadAllText(Txt-Datei)
Das funktioniert meines Wissens nach nur in .NET
Und eine Variable zweimal zu deklarieren, ist schwachsinn. Also entweder Public oder Dim - nicht beides.
Zum auslesen des Inhalts:
01.
Dim File as String 
02.
File="C:\Datei.txt" 
03.
Set objFSO = CreateObject("Scripting.FileSystemObject") 
04.
Set objFile = objFSO.OpenTextFile(File, 1) 
05.
Dim Inhalt as String 
06.
Do Until objFile.AtEndOfStream 
07.
   Inhalt = Inhalt & objFile.ReadLine  
08.
Loop 
09.
' Oder statt Zeile 6-8 das: (wenns nur eine Zeile ist) 
10.
'Inhalt=obj.File.ReadLine 
11.
Wscript.echo Inhalt
Mathe172
[Edit: P.S.: Schau mal hier <-- Link!]
Bitte warten ..
Mitglied: pictop
14.07.2011 um 17:06 Uhr
Danke für deine Hilfe !!!!!


Lg
Tobias
Bitte warten ..
Mitglied: Friemler
14.07.2011 um 17:14 Uhr
Hallo Pictop,

schau Dir das mal an:
01.
Set objFSO    = CreateObject("Scripting.FileSystemObject") 
02.
Set objInFile = objFSO.OpenTextFile(strInFile, ForReading) 
03.
 
04.
While Not objInFile.AtEndOfStream 
05.
  strContent = strContent & objInFile.ReadLine & vbCRLF 
06.
Wend 
07.
 
08.
arrContent = Split(strContent, vbCRLF) 
09.
 
10.
For I = 0 To UBound(arrContent) - 1 
11.
  WScript.Echo arrContent(I) 
12.
Next
Die While-Schleife liest die Datei Zeile für Zeile ein und schreibt jede Zeile mit einem nachfolgenden Zeilenumbruch in den String strContent. Dieser String wird von der Funktion Split anhand des Zeilenumbruchs wieder in einzelne Zeilen zerlegt und aus den einzelnen Zeilen das Array arrContent erzeugt.

Das ist zwar umständlich (man könnte auch die Methode ReadAll des File-Objects verwenden), garantiert aber, dass es egal ist, ob die letzte Zeile der Datei mit einem Zeilenumbruch abgeschlossen ist oder nicht - das Array arrContent enthält in beiden Fällen die gleiche Anzahl von Elementen.

Das letzte Element diese Arrays ist immer leer, da die letzte Zeile der Datei ebenfalls mit einem nachfolgenden Zeilenumbruch in den String strContent geschrieben wird. Danach kommt nichts mehr, aber Split erzeugt wegen dem Zeilenumbruch dennoch ein zusätzliches (leeres) Arrayelement.

Die FOR-Schleife läuft deshalb von 0 bis zum größten Index des Arrays minus 1. Hier werden die Zeilen der Datei mit WScript.Echo ausgegeben.

Wenn Du den Inhalt der Zeilen bestimmten Variablen zuweisen willst, musst Du die Zeilennummer in der Datei kennen, in der der Wert für eine bestimmte Variable steht. Zeile 1 wäre dann Index 0 im Array, Zeile 2 Index 1 usw.

@mathe172 und ackerdiesel:
Was Ihr da verwendet ist Visual Basic, nicht Visual Basic Script. In VBS sind alle Variablen typenlos, Dinge wie Dim Var As String führen nur zu Fehlern.

Gruß
Friemler
Bitte warten ..
Mitglied: pictop
15.07.2011 um 17:57 Uhr
Danke dir!





Grüße,
Pictop
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Batch & Shell
Wert in Registry suchen und in Variable speichern (2)

Frage von J.Troll zum Thema Batch & Shell ...

Batch & Shell
Per Batch ab einer bestimmten Stelle in einer .txt auslesen (1)

Frage von PeterPann zum Thema Batch & Shell ...

VB for Applications
gelöst Vbscript.regexp suche nach Variable (5)

Frage von deutsch73 zum Thema VB for Applications ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...