LANline Tipps & Tricks

Tipp: Mit VBS ANSI und UTF8/16 öffnen

29. Juni 2017, 14:11 Uhr | Von Thomas Bär.

Bei der Textdateiverarbeitung mit Visual Basic Script (VBS) kann es zum unschönen Phänomen kommen, dass das Skript kryptische Daten ausliest. Wie lässt sich das Problem umgehen?

Bei der Textdateiverarbeitung mit Visual Basic Script (VBS) kann es passieren, dass das Skript statt einem lesbaren Textinhalt kryptische Daten ausliest. Auch wer den "TristateTrue" auf UNICODE umstellt, wird möglicherweise nicht den gewünschten Erfolg erzielen können. Grundsätzlich gibt es zwei unterschiedliche Methoden, um Textdateien einzulesen. Eine Variante für Standard ANSI-Dateien und eine modernere Variante für UTF8/UTF16/US-ASCII:

Variante ANSI:

option explicit

dim objSHELL, objFSO, objOTX, strFILENAME, strDATA

strFILENAME = „ANSI.TXT“

set objSHELL = CreateObject(„WScript.Shell“)

set objFSO = CreateObject(„Scripting.FileSystemObject“)

set objOTX = objFSO.OpenTextFile(strFILENAME,1,0)

strDATA = objOTX.ReadAll

msgbox(strData)

Variante: UTF8/UTF16/US-ASCII:

option explicit

Dim objSTREAM, strDATA, strFILENAME

strFILENAME = „uni.txt“

Set objSTREAM = CreateObject(„ADODB.Stream“)

objSTREAM.CharSet = „utf-16“

objSTREAM.Open

objSTREAM.LoadFromFile(strFILENAME)

strDATA = objStream.ReadText()

msgbox(strDATA)

Hierbei muss man das Charset entsprechend anpassen, beispielsweise UTF-8, UTF-16 oder US-ASCII.

Thomas Bär.

Lesen Sie mehr zum Thema


Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu AIDA Geschäftsführungs- Organisations-Systeme GmbH

Matchmaker+