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

ASCII nach HEX Konvertierung z.B. ABC nach 414243

Frage Entwicklung Batch & Shell

Mitglied: flugwaps

flugwaps (Level 1) - Jetzt verbinden

17.06.2009, aktualisiert 18.10.2012, 7002 Aufrufe, 8 Kommentare

Hallo allesamt !

ich habe da eine vielleicht etwas exotische Problemstellung
für einen selbst gebastelten Webseitengenerator.

Zwar ist das Problem schon per selbstprogrammierter exe gelöst, aber es "passt" nicht in das batch-Projekt.
(Nur für diese Funktion ruft das batch eine exe auf -> blöd)

Aufgabe :
eine Variable hat den Wert ABC und soll in die ASCII-hex-Darstellung gewandelt werden.
Es soll aus rauskommen : 414243.
... dies natürlich für den gesamten Zeichenvorrat
Könnt ihr mir Ansätze aufzeigen wie in Batch so etwas realisiert werden kann?

Grüße und besten Dank im Voraus.
Mitglied: LotPings
17.06.2009 um 11:21 Uhr
Zitat von flugwaps:
Hallo alleine,
eine Variable hat den Wert ABC und soll in die ASCII-hex-Darstellung gewandelt werden.
Es soll aus rauskommen : 414243.
... dies natürlich für den gesamten Zeichenvorrat
Das ist erstens mit nur Batchmitteln extrem langsam und schwierig und je nach Definition von gesamten Zeichenvorrat unmöglich.
DOS 437/850 ? Ansi ? ISO 8859-1 /-15 ? UTF-8 /-16? etc..

Könnt ihr mir Ansätze aufzeigen wie in Batch so etwas realisiert werden kann?
Zeichen für Zeichen gegen ein Pseudoarray vergleichen.

Im Klartext ist es günstiger ein vorhandenes externes Programm zu benutzen.

Gruß
LotPings
Bitte warten ..
Mitglied: bastla
17.06.2009 um 12:13 Uhr
... oder vielleicht damit das Auslangen zu finden:
01.
@echo off & setlocal 
02.
set A=%temp%\ASC2HEX.vbs 
03.
>%A% echo A=WScript.Arguments(0):For i=1 To Len(A):H=H^& Hex(Asc(Mid(A,i,1))):Next:WScript.Echo H 
04.
 
05.
set "ASC=ABCDE" 
06.
for /f %%i in ('cscript //nologo %A% "%ASC%"') do set "HEX=%%i" 
07.
echo %ASC% --^> %HEX%
Grüße
bastla

[Edit] Zeile 6 korrigiert [/Edit]
Bitte warten ..
Mitglied: LotPings
17.06.2009 um 12:22 Uhr
Hallo bastla,

du hast ja Recht

Aber damit nicht immer 414243 rauskommt, würde ich Zeile 06 ändern in
for /f %%i in ('cscript //nologo %A% "%ASC%"') do set "HEX=%%i"

Gruß
LotPings
Bitte warten ..
Mitglied: flugwaps
17.06.2009 um 12:55 Uhr
In diesem Sinne : 44414E4B452021
Bitte warten ..
Mitglied: LotPings
17.06.2009, aktualisiert 18.10.2012
Zitat von flugwaps:
In diesem Sinne : 44414E4B452021

44616E6B652021 sähe aber besser aus

Und für die Leute, die Ascii in Hex nicht direkt lesen können:

01.
:: HEX2ASC.cmd ::::::::::::::::::::::::::::::::::::::::::::::::::::: 
02.
:: http://www.administrator.de/forum/ascii-nach-hex-konvertierung-z.b.-abc-nach-414243-118385.html#comment-449415 
03.
@echo off & setlocal 
04.
Set vbs="%~dpn0.vbs" 
05.
>%vbs% echo H=WScript.Arguments(0):For i=1 To Len(H) step 2:A=A^&chr("&H"^&Mid(H,i,2)):Next:WScript.Echo A 
06.
set "HEX=44616E6B652021" 
07.
for /f "delims=" %%i in ('cscript //nologo %vbs% "%HEX%"') do set "ASC=%%i" 
08.
echo %HEX% --^> %ASC%
Gruß
LotPings
Bitte warten ..
Mitglied: flugwaps
17.06.2009 um 14:56 Uhr
Sollte ein lautes Danke sein
Bitte warten ..
Mitglied: LotPings
17.06.2009 um 15:05 Uhr
OT
Ja, aber wenn man schreit, ist es so schwer dabei "freundlich" zu klingen.
/OT
Bitte warten ..
Mitglied: bastla
17.06.2009 um 16:26 Uhr
@LotPings
Danke für's Aufräumen ...
... ich mach's dann oben auch noch richtig.

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

Linkliste für Adventskalender

(3)

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

Ähnliche Inhalte
Windows Server
MBR in GPT Konvertierung "Live" möglich (5)

Frage von killtec zum Thema Windows Server ...

Sonstige Systeme
gelöst HEX - Datei zu Dezimal (6)

Frage von firstline zum Thema Sonstige Systeme ...

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

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 ...

Erkennung und -Abwehr
Spam mit eigener Domain (12)

Frage von NoobOne zum Thema Erkennung und -Abwehr ...