06. marts 2002 - 09:53Der er
7 kommentarer og 1 løsning
Konvertering af ÆØÅ
Hej
Kan det virkelig passe at der ikke er nogen der kan give mig et eksempel på hvordan jeg kan konvertere en dos-tekst til windows-tekst (tidl. spørgsmål). Det eneste jeg ved er at man åbenbart kan bruge functionen (AnsiToOem), men da der ikke står ret meget om den i hjælpen og da jeg er nybegynder, inden for Delphi, kan jeg ikke få det til at virke, så please hvis en kan gi mig et lille eksemplen, bare noget ala
function konvert(tekst: string):string; begin result := AnsiToOem(tekst,xxx et eller andet); end;
Jeg har lavet en procedure der går den modsatte vej, så det skulle være en saml sag at "vende" funktionen:
function TerminalSkrift(Tekst: String):String; var x: Integer; begin for x:=1 to length(Tekst) do begin if Tekst[x]='æ' then Tekst[x]:=#145; if Tekst[x]='Æ' then Tekst[x]:=#146; if Tekst[x]='ø' then Tekst[x]:=#155; if Tekst[x]='Ø' then Tekst[x]:=#157; if Tekst[x]='å' then Tekst[x]:=#134; if Tekst[x]='Å' then Tekst[x]:=#143; end; Result:=Tekst; end;
>borrisholt Det virker ikke, teksten "r›d bl† ‘bler" (rød blå æbler) bliver konverteret til "r>d blÅ 'bler", og jeg har indstillet windows til at bruge dansk tastatur og sprog.
>nca Dit virker udmærket, men det vidste jeg godt i forvejen at det ville gøre. Jeg vil dog ikke accepterer svaret, da det simpelhen ikk kan passe at et sprog som Delphi, (som vel er et professionel sprog), ikke har en function til at konvertere tekst. Alle andre (professionel) sprog jeg kender har en function ala Decode('Tekst der skal konverteres','ISOxxxxxx'), hvor ISOxxxx er lig med det tegnsæt der skal konverteres til.
>borrisholt Tak, nu har jeg fået noget til at virke, men der er bare noget der undre mig.
Denne her virker. function konvert(tekst: string):string; begin result := tekst; OemToChar(PChar(tekst), PChar(result)); end;
Men hvorfor virker det her ikke?? function konvert(tekst: string):string; var s: string; begin s := tekst; OemToChar(PChar(tekst), PChar(s)); result := s; end; Det ser jo trods alt lidt mere normal ud, det jeg mener er at det ser mærkelig ud at starte med at sige 'result := tekst', result hører efter min mening til i bunden af en function.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.