Avatar billede mik789 Nybegynder
12. oktober 2002 - 00:21 Der er 10 kommentarer og
1 løsning

Dos prompt, notepad og æ, ø, å

Af en eller anden grund opfatter Dos skærmen og Notepad de danske bogstaver forskelligt. Jeg kan uden videre skrive æ, ø og å både i Dos skærmen og i Notepad, men hvis jeg paster noget fra Notepad over i Dos skærmen smider den gylle ind i stedet for æ, ø og å fra Notepad. Jeg tror det er Dos skærmen den er gal med. For hvis jeg f.eks. skriver til MySql fra Dos skærmen med æ, ø og å (hvor det ser OK ud) bliver det forkert når jeg senere ser det fra phpMyAdmin (dvs. fra min browser). Kender nogle til problemet?
Avatar billede jespernaur Nybegynder
12. oktober 2002 - 10:16 #1
Det er sådan set ikke en fejl, men der er tale om den ulyksalige kendsgerning, at DOS-prompten benytter sig af et tegnsæt mens langt de fleste Windows-programmer benytter sig af et andet. Den oprindelige årsag hertil fortaber sig i forhistoriens tåger (og skæld gerne Bill Gates ud over dette), men kendsgerningen er, at hvis man i DOS-prompten benytter de danske bogstaver

ÆØÅæøå

giver det ASCII-tegnkoderne

\222\235\217\221\233\206 (alle oktale)

hvorimod de samme bogstaver i et Windowsprogram giver ASCII-koderne

\306\330\305\346\370\345 (igen alle oktale)

Man er altså nødt til at beslutte, hvordan man vil gemme sine tekster (enten som Windows-tekster eller som DOS-tekster, jeg ville nok anbefale Windows-varianten). Når så disse tekster skal skrives ud i det andet miljø, må man konvertere.

Mvh
Jesper Naur
Avatar billede mik789 Nybegynder
12. oktober 2002 - 11:14 #2
jespernaur> Hmmn, ved du hvad andre gør når de skal bruge Dos prompten f.eks. til at lægge data i en database (i mit tilfælde MySql)?
Avatar billede jespernaur Nybegynder
12. oktober 2002 - 14:42 #3
Mit umiddelbare bud er, at de også konverterer. Det er så vidt jeg kan se den eneste mulighed, hvis man ønsker at vise eller indlæse ÆØÅæøå både i Windowsprogrammer og i DOS-promten - da der anvendes forskellig intern repræsentation af ÆØÅæøå i Windows og i DOS slipper man ikke udenom et eller andet sted undervejs.

Mvh
Jesper Naur
Avatar billede mik789 Nybegynder
12. oktober 2002 - 14:45 #4
men hvordan konverterer de? Jeg har prøvet at taste dine koder ind både i Dos skærmen og i Notepad ved at holde Alt-tasten ned og derefter tase dine talkoder oven for ind. Men sådan gør man åbenbart ikke i Dos prompten for den reagerer overhovedet ikke på at alt tasten er nede, men taser bare tallene direkte ind på skærmen. I Notepad virker det godt nok, men der kommer nogle helt andre tegn frem end æ, ø og å, når jeg bruger dine koder.
Avatar billede jespernaur Nybegynder
12. oktober 2002 - 15:12 #5
Som jeg også skrev ovenfor, er mine angivne koder oktale. Det skyldes, at de stammer fra et konverteringsprogram jeg har, hvor det af historiske årsager var mest praktisk at angive koderne oktalt. Eksempel: Jeg har angivet Windows Æ som 306 oktalt, dette er 198 decimalt, så hvis du i Notepad trykker ALT/0198 vil du se et Æ. Hvis du gemmer dette som en fil, og udskriver den i DOS-promten ved at skrive TYPE <fil>, vil du se pølse.

Hvis du derimod i Notepad indtaster et DOS-Æ (222 oktalt, = 146 decimalt), altså ALT/0146, vil du se pølse i Notepad, men det korrekte Æ hvis du TYPE'r filen i DOS.

(tip: Windows-lommeregneren kan omregne fra oktalt til decimalt).

I DOS-promten kan du indtaste ALT/146 og få DOS-Æ.
Avatar billede jsb Nybegynder
12. oktober 2002 - 15:14 #6
Har du tjekket at din "oemcp" i registreringdatabasen er sat til 850, for vi har haft et tilsvarende problem med danske specialbogstaver i navision. Det løset vi ved at ændre værdien i OEMCP fra 437 til 850.
Som jeg har forstået det er OEMCP den grundlæggende codepage, dvs. tegnsæt, der bruges i systemet, selvom windows er sat til dansk.

Den letteste måde at finde værdien på er at søge i regedit på oemcp.
Avatar billede jsb Nybegynder
12. oktober 2002 - 15:18 #7
Du kan jo også sætte den til 865, det er jo koden for dansk :-)
Avatar billede jsb Nybegynder
12. oktober 2002 - 15:20 #8
Det skulle gerne beyder at du er fri for at rode med ASCII-koder
Avatar billede mik789 Nybegynder
12. oktober 2002 - 15:28 #9
jsb> min oemcp ER sat til 850
Avatar billede jsb Nybegynder
12. oktober 2002 - 15:30 #10
Ok, skulle jo bare være sikker på at indstillingerne var korrekte :-)
Avatar billede mik789 Nybegynder
12. oktober 2002 - 23:02 #11
tak for hjælpen. Da det jo drejer sig om databasemateriale til brug for web sider, blev løsningen at kovertere til html entities. det kræver jo så at man også lægger en html entity kovertering omkring input fra brugerne, men det er ikke noget problem.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester