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

Text umwandeln (A->1, B->2, C->3, ...)

Frage Entwicklung Batch & Shell

Mitglied: muesteff

muesteff (Level 1) - Jetzt verbinden

21.02.2007, aktualisiert 18.10.2012, 4885 Aufrufe, 9 Kommentare

Ganz primitiv ausgedrückt: Ich möchte, dass der Inhalt einer Textdatei ausgelesen wird und für jeden Buchstaben ein vorher zugewiesener Wert in einer zweiten Textdatei gespeichert wird.

Beispiel:
01.
Definition: A=1, B=2, C=3
Textdatei 1:
01.
ABC
Ausgabe Textdatei 2:
01.
123


Kann mir jemand weiterhelfen?
Mitglied: bastla
22.02.2007 um 08:23 Uhr
Hallo muesteff!

  • Wird jedes Zeichen nur durch jeweils ein anderes Zeichen ersetzt, oder soll zB aus dem "K" ein Eintrag "11" werden (mit dem Problem, im Ergebnis entscheiden zu müssen, ob damit "K" oder "AA" gemeint ist, oder aber ein Trennzeichen zwischen die einzelnen Zeichen setzen zu müssen).
  • Sollen nur Buchstaben umgewandelt werden, oder auch Ziffern und ev Sonderzeichen?

Vielleicht stellst Du am besten einmal die gesamte Ersetzungstabelle dar.

Grüße
bastla
Bitte warten ..
Mitglied: muesteff
22.02.2007 um 10:11 Uhr
* Wird jedes Zeichen nur durch jeweils ein anderes Zeichen ersetzt, oder soll zB aus dem "K" ein Eintrag "11" werden (mit dem Problem, im Ergebnis entscheiden zu müssen, ob damit "K" oder "AA" gemeint ist, oder aber ein Trennzeichen zwischen die einzelnen Zeichen setzen zu müssen).
Das ist eine sehr gute Frage.
Aber vielleicht ist es am besten wenn ich die Tabelle zeige:

00=|
03=(Zeilenumbruch)
30=0
31=1
32=2
33=3
34=4
35=5
36=6
37=7
38=8
39=9
3A=(Leerzeichen)
48=.
41='
46=,
47=-
3B=!
4A=,
4F=?
6A=[
6C=]
50=A
51=B
52=C
[...]
67=X
68=Y
69=Z
70=a
71=b
72=c
[...]
87=x
88=y
89=z
B9=ß
BD=ä
CB=ö
CF=ü
0AA1=*Al Bhed Text*
1030=*Antwort1*
1031=*Antwort2*
1032=*Antwort3*
1033=*Antwort4*
1034=*Antwort5*
1330=Yuna
1331=Rikku
1332=Paine
1961=Kumpelchen
1947=Brüderchen
1962=Shinra
197D=*Al Bhed*
193B=*Wakka*
1946=*Rin*
2033=*Spira*
35303F=*Zahl*
Bitte warten ..
Mitglied: bastla
22.02.2007 um 10:57 Uhr
Hallo muesteff!

Leider kann ich Dir nicht wirklich folgen - bedeutet der Eintrag "50=A" dass jedes "A" durch die 2 Ziffern "5" und "0" repräsentiert werden soll, oder ist damit das Zeichen mit dem (Hex-)Code 50 gemeint - und was ist unter den Einträgen ab "0AA1" zu verstehen?

Stell bitte auch noch ein Stück der Quell- und der Zieldatei rein.

Grüße
bastla
Bitte warten ..
Mitglied: muesteff
22.02.2007 um 11:23 Uhr
Ich möchte dass wenn ich z.B. ein A eingebe, ich ein 50 als Ausgabe (in eine Textdatei?) bekomme. Man kann das vielleicht mit einer Textverschlüsselung vergleichen.

Ebenso ist das mit den Einträgen ab 0AA1 gedacht: Bei der Eingabe von 1330 möchte ich als Ausgabe Yuna bekommen.


Quell- oder Zieldatei habe ich leider keine. Ich habe nur die Buchstaben und deren zugewiesenen Zahlen.
Bitte warten ..
Mitglied: bastla
22.02.2007 um 12:44 Uhr
Hallo muesteff!

Ich möchte dass wenn ich z.B. ein A eingebe, ich ein 50 als Ausgabe (in eine Textdatei?) bekomme. Man kann das vielleicht mit einer Textverschlüsselung vergleichen.

Ebenso ist das mit den Einträgen ab 0AA1 gedacht: Bei der Eingabe von 1330 möchte ich als Ausgabe Yuna bekommen.

Hiermit sind auch die letzten Klarheiten beseitigt:
  • Willst Du etwas eingeben, oder sollen die Ausgangsdaten aus einer Textdatei gelesen werden?
  • Soll aus "1330" tatsächlich "Yuna" gemacht werden, oder soll in der Ausgabedatei anstatt "Yuna" der Wert "1330" stehen (so hätte ich die Tabelle interpretiert).
  • Woher weiß ich, ob "Yuna" als Einheit zu betrachten ist oder die Zeichenfolge "Y", "u", "n" und "a" darstellt und entsprechend in 4 Ausgabezahlen umzuwandeln ist (bzw dass nicht "1330" zu "31333330" werden soll?

Grüße
bastla
Bitte warten ..
Mitglied: muesteff
22.02.2007 um 13:06 Uhr
Hiermit sind auch die letzten Klarheiten beseitigt:
Hm, ich glaube du meintest etwas anderes =P

Am besten wäre es wohl, wenn die Daten aus einer Textdatei ausgelesen werden.

Natürlich soll für Yuna die Zahl 1330 geschrieben werden, nicht umgekehrt.

Dass die Wörter als Zeichenfolge und nicht einzeln gesehen werden, ist so ein Problem. Ich habe leider keine Idee, wie man das lösen könnte. Im Notfall könnte man aber auch darauf verzichten.

Wichtig wären die einzelnen Zeichen, nicht die Wörter. Ich denke, das ist auch einfacher zu realisieren.
Bitte warten ..
Mitglied: Phlegma
22.02.2007, aktualisiert 18.10.2012
hi muesteff,

ich arbeite an auch an einer verschlüsselung... guckst du hier
nur deine scheint mir weit aus problematischer, du wirst nach jedem zeichen bzw 2 zahlen ein leerzeichen einführen müssen damit der text auch anständig zurückinterpretiert werden kann
und dann belieb noch weitere probleme die bastla auch schon angesprochen hat.

einfacher wäre eine verschlüsselung die ein zeichen gegen ein anderes austauscht, und dann kannst du auch ganze wörter in ein zeichen packen.

gruß, Ph
Bitte warten ..
Mitglied: bastla
22.02.2007 um 14:13 Uhr
Hallo muesteff!

Versuch mal folgendes Script:
01.
If WScript.Arguments.Count < 1 Then 
02.
	WScript.Echo "Keine Datei zu bearbeiten." 
03.
	WScript.Quit(1) 
04.
End If 
05.
sQuelle = WScript.Arguments(0) 
06.
Set fso = CreateObject("Scripting.FileSystemObject") 
07.
If Not fso.FileExists(sQuelle) Then 
08.
    WScript.Echo "Datei " & sQuelle & " nicht gefunden!" 
09.
    WScript.Quit(1) 
10.
End If 
11.
sTyp = Mid(sQuelle, InstrRev(sQuelle, ".")) 
12.
sPfad = Left(sQuelle, Len(sQuelle) - Len(sTyp)) 
13.
sZiel = sPfad & "-codiert" & sTyp 
14.
Set oQuelle = fso.OpenTextFile(sQuelle, 1) 
15.
sEinText = oQuelle.ReadAll 
16.
oQuelle.Close 
17.
sAusText = "" 
18.
For i = 1 To Len(sEinText) 
19.
	Ein = Mid(sEinText, i, 1) 
20.
	If Ein >= "A" And Ein <= "Z" Then 
21.
		Aus = Hex(Asc(Ein) - 65 + 80) 
22.
	ElseIf Ein >= "a" And Ein <= "z" Then 
23.
		Aus = Hex(Asc(Ein) - 97 + 112) 
24.
	Else 
25.
		Select Case Ein 
26.
		Case "|" 
27.
			Aus = "00" 
28.
		Case Chr(13) 
29.
			Aus = "03" 
30.
		Case Chr(10) 
31.
			Aus = "" 
32.
		Case " " 
33.
			Aus = "3A" 
34.
		Case "." 
35.
			Aus = "48" 
36.
		Case "'" 
37.
			Aus = "41" 
38.
		Case "," 'kommt unten nochmals 
39.
			Aus = "46" 
40.
		Case "-" 
41.
			Aus = "47" 
42.
		Case "!" 
43.
			Aus = "3B" 
44.
		Case "," 'bereits oben erfasst 
45.
			Aus = "4A" 
46.
		Case "?" 
47.
			Aus = "4F" 
48.
		Case "[" 
49.
			Aus = "6A" 
50.
		Case "]" 
51.
			Aus = "6C" 
52.
		Case "ß" 
53.
			Aus = "B9" 
54.
		Case "ä" 
55.
			Aus = "BD" 
56.
		Case "ö" 
57.
			Aus = "CB" 
58.
		Case "ü" 
59.
			Aus = "CF" 
60.
		Case Else 'nicht angeführtes Zeichen 
61.
			Aus = "__" 
62.
		End Select 
63.
	End If 
64.
	sAusText = sAusText & Aus 
65.
Next 
66.
Set oZiel = fso.OpenTextFile(sZiel, 2, True) 'ev bereits existierende Zieldatei wird überschrieben 
67.
oZiel.Write sAusText 
68.
oZiel.Close 
69.
WScript.Echo "Fertig."
Speichere unter "Codieren.vbs" und ziehe die Eingabedatei auf das Script. Die Ausgabedatei wird unter dem Namen "Eingabedatei-codiert" mit dem selben Typ und im selben Ordner wie die Eingabedatei gespeichert.

Grüße
bastla
Bitte warten ..
Mitglied: muesteff
22.02.2007, aktualisiert 18.10.2012
hi muesteff,
ich arbeite an auch an einer verschlüsselung... guckst du hier

Es ist ja nicht wirklich eine Verschlüsselung. Ich habe es nur mal mit einer Verschlüsselung verglichen, es ist sich ja ähnlich. Ich werde mir den Thread jedoch trotzdem anschauen, Danke!


bastla, das Script funktioniert perfekt. Herzlichen Dank, damit kann ich bestimmt weiterarbeiten! Bei weiteren Fragen melde ich mich.
Bitte warten ..
Neuester Wissensbeitrag
Microsoft Office

MS Office Excel - Formel wird angezeigt, aber nicht berechneter Wert!

Tipp von holli.zimmi zum Thema Microsoft Office ...

Ähnliche Inhalte
Batch & Shell
Batsch doppelte Zeile in in Text finden und eine löschen (10)

Frage von GNLen1 zum Thema Batch & Shell ...

VB for Applications
gelöst Excel - VBA - Fusszeile Text und Grafik (1)

Frage von Juckie zum Thema VB for Applications ...

Heiß diskutierte Inhalte
Hyper-V
gelöst Reiner Hyper- V Server oder lieber Rolle (15)

Frage von Winuser zum Thema Hyper-V ...

Windows Server
gelöst Rechte als Admin vergeben - Zugriff verweigert (14)

Frage von Ghost108 zum Thema Windows Server ...

Router & Routing
gelöst IP Kamera für drei unabhängige Netzwerke (12)

Frage von ProfessorZ zum Thema Router & Routing ...