Nicht druckbare Zeichen aus einer Liste entfernen

Hallo Wissende,

zunächst mal, von C habe ich keine Ahnung.

In VB/VBA kann man mit CHR(X) mit X von 0 bis 255 alle Ascii/Ansi-zeichen (verwechsel beides immer *gg*) darstellen in einer Liste oder ähnlich durch eine Schleife über X.

Mit ChrW(X) kann man für X=0 bis 65535 alle Unicodezeichen der gewählten Schriftart darstellen.

In dieser Liste sieht man dann alle Zeichen die die gewählte Schriftart „kennt“, diejenigen die nicht bekannt sind oder die es nicht gibt, werden als Quadrat dargestellt.

Nun gibt es in dieser Liste richtig viel Quadrate, wie kann ich die erkennen und löschen?

Wie gesagt C kenne ich nicht, aber eine durch C erstellte textdatei kann ich schon locker mit Vb(a) auswerten.

Was ich sehr gerne möchte ist eine Textdatei wo nur die Zeichennummern aufgelistet sind, die Windows auch darstellen kann.

Also eine Exe-datei die ich in etwa folgendermaßen aufrufen kann mit Parametern:

Zeichen.exe „Arial“ „C:\Zeichen\Arial.txt“

Danke für das Interesse
Gruß
Reinhard

Hallo,

Nun gibt es in dieser Liste richtig viel Quadrate, wie kann
ich die erkennen und löschen?

So ohne weiteres gar nicht, das hängt nämlich vom Zeichensatz und der verwendeten Codierung ab. Du müsstest Dir einen Fontmanager basteln, der abfragt, welche Glyphen in einem bestimmten Zeichensatz definiert sind, und welche nicht.

Wie gesagt C kenne ich nicht, aber eine durch C erstellte
textdatei kann ich schon locker mit Vb(a) auswerten.

Wenn Du C nicht, VB hingegen recht wohl kennst, warum machst Du das dann nicht mit VB?

Was ich sehr gerne möchte ist eine Textdatei wo nur die
Zeichennummern aufgelistet sind, die Windows auch darstellen
kann.

Windows kann alle Zeichen darstellen. Das Problem ist der Zeichensatz, der offenbar einen kleineren Zeichenvorrat hat.

Was Du suchst, ist eigentlich ein Fontmanager. Sowas wie „fontmatrix“ gibt es bestimmt auch für Windows.

http://fontmatrix.net/

Gruß

Fritze