| Autor |
Beitrag |
WeBsPaCe
      
Beiträge: 2322
Erhaltene Danke: 1
FireFox 3, Internet Explorer 6 SP1
D1, D3Prof, D6Pers, D7Pers+Indy, VisualStudio Express
|
Verfasst: Sa 16.04.05 17:18
Moin...
Ich hab ein Problem beim Ausgeben eines ASCII-Codes per Chr(). Z.B. bei folgendem Programm:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14:
| program Project1;
{$APPTYPE CONSOLE}
uses SysUtils;
var i: Integer;
begin for i := 1 to 254 do writeln(IntToStr(i) + ' ' + chr(i)); readln; end. |
Da zeigt er mir bei z.B. 199 ein komisches A mit Tilde drauf an. Ich bräuchte dieses Zeichen jedoch in meinem Programm... Ich denk mal, es liegt an irgendwelchen Zeichensätzen...
Danke schonmal... ;) Moderiert von Christian S.: Topic aus Algorithmen, Optimierung und Assembler verschoben am Sa 16.04.2005 um 17:20
|
|
uall@ogc
      
Beiträge: 1826
Erhaltene Danke: 11
Win 2000 & VMware
Delphi 3 Prof, Delphi 7 Prof
|
Verfasst: Sa 16.04.05 17:26
man muss jetzt nicht unbedingt verstehen was du von uns willst?
_________________ wer andern eine grube gräbt hat ein grubengrabgerät
- oder einfach zu viel zeit
|
|
WeBsPaCe 
      
Beiträge: 2322
Erhaltene Danke: 1
FireFox 3, Internet Explorer 6 SP1
D1, D3Prof, D6Pers, D7Pers+Indy, VisualStudio Express
|
Verfasst: Sa 16.04.05 17:30
|
|
Heiko
      
Beiträge: 3169
Erhaltene Danke: 11
|
Verfasst: Sa 16.04.05 17:48
In der Konsolenanwendung wird der DOS-ASCII-Code angezeigt und nicht der Win-ASCII-Code  .
Chr(199):
Win: Ç
DOS: Ã
Das Zeichen meinst du doch?
|
|
WeBsPaCe 
      
Beiträge: 2322
Erhaltene Danke: 1
FireFox 3, Internet Explorer 6 SP1
D1, D3Prof, D6Pers, D7Pers+Indy, VisualStudio Express
|
Verfasst: Sa 16.04.05 17:52
Nö.
Ich mein so einen senkrechten Doppelstrich mit einem senkrechten angebauten Strich.  Ich such das Zeichen mal... 
|
|
Muetze1
      
Beiträge: 346
|
Verfasst: Sa 16.04.05 18:08
Moin!
Das sind die pseudo-grafischen Elemente der alten DOS Maschinen. Die Windows Eingabeaufforderung nutzt diesen aber nicht - sie benutzt ja einen normalen Windows Font und dieser hat dort nicht die IBM CodePage zeichen mit drinne. Wozu willst du dies Zeichen überhaupt haben? Vor allem: in einer Windows 32 GUI Anwendung oder in einer Windows 32 Konsolenanwendung.
MfG
Meutze1
|
|
WeBsPaCe 
      
Beiträge: 2322
Erhaltene Danke: 1
FireFox 3, Internet Explorer 6 SP1
D1, D3Prof, D6Pers, D7Pers+Indy, VisualStudio Express
|
Verfasst: Sa 16.04.05 18:49
|
|
Heiko
      
Beiträge: 3169
Erhaltene Danke: 11
|
Verfasst: Sa 16.04.05 20:01
@WeBsPaCe: Ist ein Doppelstrich oder Doppelpunkt über dem A?
Wenn es ein Doppelpunkt ist mach mal ein Screenshot davon und stell den hier rein. Würde mich mal interessieren wie ein A mit zwei Strichen darüber aussieht  .
|
|
WeBsPaCe 
      
Beiträge: 2322
Erhaltene Danke: 1
FireFox 3, Internet Explorer 6 SP1
D1, D3Prof, D6Pers, D7Pers+Indy, VisualStudio Express
|
Verfasst: Sa 16.04.05 20:14
Jop. Hier.  Ihr könnt's ja auch mal bei euch ausprobiern:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| program Project2;
{$APPTYPE CONSOLE}
uses SysUtils;
begin write(chr(199)); readln; end. |
Einloggen, um Attachments anzusehen!
|
|
Heiko
      
Beiträge: 3169
Erhaltene Danke: 11
|
Verfasst: Sa 16.04.05 20:29
Das ist doch eindeutig Ã!!!!!!!!
Kannst du ja auch mal ausprobieren Alt drückst und währenddessen die 1 dann 9, dann nochmal die 9 drückst und dann die ALt-Taste wieder loslässt. Wenn du das z.B. in deinem Textbearbeitungsprogramm eingibst kannst du das dann sogar vergrößern um das Zeichen zu vergleichen  (Ich traue es dir zu mindestens zu : wink: ). Die Eingabeaufforderung entspricht also dem DOS-ASCII-Code.
|
|
hansa
      
Beiträge: 3079
Erhaltene Danke: 9
|
Verfasst: Sa 16.04.05 21:26
Ihr braucht das hier :
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20:
| function IBMAsciiToAnsi(s: string): string; var i: integer; begin Result := ''; for i := 0 to Length(s) do begin case s[i] of #142: Result := Result + #196; #153: Result := Result + #214; #154: Result := Result + #220; #132: Result := Result + #228; #148: Result := Result + #246; #129: Result := Result + #252; #225: Result := Result + #223; else Result := Result + s[i]; end; end; end; |
Allerding ist da kein ~A dabei.
_________________ Gruß
Hansa
|
|
Heiko
      
Beiträge: 3169
Erhaltene Danke: 11
|
Verfasst: So 17.04.05 10:13
Was hat dein Post hier groß mit dem Thema zu tun? Ich glaub hier geht es ehr um das Zeichen 199. Und das steht in deinem Quelltext nicht drin. Für was ist die Prozedur überhaupt? Es ersetzt ja nur ein paar Zeichen und nicht alle, die anders sind im Gegensatz von DOS zu Windows.
|
|
hansa
      
Beiträge: 3079
Erhaltene Danke: 9
|
Verfasst: So 17.04.05 10:53
_________________ Gruß
Hansa
|
|
delfiphan
      
Beiträge: 2684
Erhaltene Danke: 32
|
Verfasst: So 17.04.05 11:16
Ansi zu Ascii8:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| program Project1;
{$APPTYPE CONSOLE}
uses SysUtils, Windows;
Var Ascii, Ansi: String; begin Ascii := 'äöü'; SetLength(Ansi, length(Ascii)); CharToOemBuff(Pointer(Ascii), Pointer(Ansi), Length(Ascii)); Writeln('Ascii:',Ascii,' Ansi:',Ansi); Readln; end. |
|
|
WeBsPaCe 
      
Beiträge: 2322
Erhaltene Danke: 1
FireFox 3, Internet Explorer 6 SP1
D1, D3Prof, D6Pers, D7Pers+Indy, VisualStudio Express
|
Verfasst: So 17.04.05 13:56
Also entweder ihr versteht mich nicht oder ich euch nicht...  Was soll ich denn mit ANSI? Das hat doch damit gar nix zu tun?!?!?
Ich hab hier eine ASCII-Zeichen-Tabelle liegen auf welcher steht, dass bei Zeichen Nummer 199 das Zeichen [  moechtichhaben.GIF ] kommen soll. Das will ich auch angezeigt bekommen. Statt dessen kommt aber folgendes Zeichen [  bekommichangezeigt.GIF ]. Anscheinend war dieses Zeichen damals noch im ASCII-Zeichensatz mit drin und jetzt nicht mehr. Im Unicode ist aber auf jeden Fall noch, weil ich's mir bei Word hab einfügen können. 
Einloggen, um Attachments anzusehen!
|
|
delfiphan
      
Beiträge: 2684
Erhaltene Danke: 32
|
Verfasst: So 17.04.05 14:02
Windows Version / benützer Font?
Einloggen, um Attachments anzusehen!
|
|
Heiko
      
Beiträge: 3169
Erhaltene Danke: 11
|
Verfasst: So 17.04.05 14:13
Dein moechtichhaben-Zeichen bekommst du mit chr(204) laut meiner DOS-ASCII-Tabelle  .
|
|
WeBsPaCe 
      
Beiträge: 2322
Erhaltene Danke: 1
FireFox 3, Internet Explorer 6 SP1
D1, D3Prof, D6Pers, D7Pers+Indy, VisualStudio Express
|
Verfasst: So 17.04.05 14:15
Komisch..........
Ich hab Windows XP Professional SP2
Schülerversion ( <-- dürfte aber keinen Unterschied machen)
Schriftart ist auf Rasterschriftart eingestellt. Aber auch bei Lucida Console ist's so... 
|
|
WeBsPaCe 
      
Beiträge: 2322
Erhaltene Danke: 1
FireFox 3, Internet Explorer 6 SP1
D1, D3Prof, D6Pers, D7Pers+Indy, VisualStudio Express
|
Verfasst: So 17.04.05 14:16
|
|
Heiko
      
Beiträge: 3169
Erhaltene Danke: 11
|
Verfasst: So 17.04.05 14:18
Das Zeichen gibt es bei mir in der Tabelle ansonsten nicht. Die am ähnlichsten dem sind, sind folgende:
chr(195): ├
chr(204): ╠
|
|