Avatar billede lifeweb Nybegynder
05. juli 2006 - 10:14 Der er 12 kommentarer og
1 løsning

flere sprog i applikation

opretter igen:
Hej

Jeg har en applikation der skal kunne håndtere flere sprog...

Jeg har lavet det tidligere ved at have een language-fil, eksempelvis:
<%
if lan = "DA" then
txt_about = "OM"
end if
if lan = "EN" then
txt_about = "ABOUT"
end if
%>

Jeg ville egentlig gerne at jeg bare bruge flere forskellige filer, såsom da.lan og en.lan

Men er det muligt??

Eller er der en hel anden, og bedre måde, at gøre det på???
Avatar billede lifeweb Nybegynder
05. juli 2006 - 10:15 #1
se tidligere spørgmål her:

http://www.eksperten.dk/spm/714561
Avatar billede md_craig Nybegynder
05. juli 2006 - 13:17 #2
Nu kunne evt. lege med tekstfiler til at placere alt teksten i, på den måde har du også kun en kode at vedligeholde i sidste ende, og ikke en række forskellige ASP eller INC filer...

Start evt. med at kigge lidt her:

http://www.w3schools.com/asp/asp_ref_textstream.asp
Avatar billede lifeweb Nybegynder
05. juli 2006 - 14:26 #3
er det ikke lidt vildt at læse fra tekstfilen hver eneste gang jeg skal have en vending??

det ville være bedre at jeg kunne deklarere nogle variabler ville det ikke??
Avatar billede md_craig Nybegynder
05. juli 2006 - 14:35 #4
Du kunne kombinere det med en Dictionary
http://www.w3schools.com/asp/asp_ref_dictionary.asp

Så loade filen op i den en gang, og hente de nødvendige values ud på keys...
Noget INI-Fil alike...

En mere elegant løsning i dag vil dog måske være XML, men er pænt lang tid siden jeg har arbejdet med ASP, så ved ikke hvordan man evt. sammensætter det...
Avatar billede lifeweb Nybegynder
05. juli 2006 - 14:40 #5
det ser interessant ud...
men kræver det ikke stadig at jeg inkluderer dictionary-filen?
Avatar billede ffsoft Praktikant
05. juli 2006 - 14:44 #6
Du kunne jo hægte en database på og så have al teksten liggende i to
versioner. Så sætter du pladsholdere ind hvor der skal være tekst og
henter teksten ud af databasen side for side. Det kræver så at du har
en side hvor du kan skrive tekst ned i databasen.
Avatar billede md_craig Nybegynder
05. juli 2006 - 14:50 #7
Dictionary er en Collection type, hvis du er bekendt med HashTables så er det ca. det samme... så ikke noget includeri der... din XML og/eller text fil loader du så dynamisk ind, kigger du i det første link er det en string type, der smider du bare en variable der indeholder din string istedet...

Således loader du kun en sprogfil, og har ikke noget med den anden at gøre...
I Princippet er det samme taktik som ffsoft referer til, forskellen er bare at en Fil vil være en "flad database" som man kalder de, dvs. ingen former for smart indexering eller travasering, men bare simpel linie for linie gennemløb...
Avatar billede md_craig Nybegynder
05. juli 2006 - 15:08 #8
Du skal naturligvis have en stump kode der processer din textfil i forhold til din dictionary... Man kunne evt. gemme den i ens session derefter for at spare tid for hver load, omvendt så betyder det jo narturligvis at hver session kommer til at kræve mere hukommelse...

og sådan er der så mange muligheder...
en INI fil ser typisk således ud:

--------------------------------------------------
[Section1]
keyA=ValueA
keyB=valueB

[Section2]
KeyX=ValueX and more
KeyY=ValueY more more more
--------------------------------------------

Som det kan ses, baseret på at hver linie indeholder enten en Section betegnelse, en et Key / Value par eller en tom linie...

Dette "Et linies" system, kan være mindre hensigtsmessigt i denne forbindelse, hvilket er derfor XML kommer ind i billedet... men man kan ofc lave sin text fil på en måde også så man kan lave flere linier per key... (i prinsippet lave sin egen XML Wannabee version) og så fortolke den... (øhhh.. but why?, fordi det kunne være nemmere at kode fortolkningen...)... Eller man kunne bruge XML og lave sin egen XML læser...

Mja... mulighederne er mange som du kan se...
Desvære er som sagt rusty i ASP... (Laver jeg endelig en hjæmmeside, hvilket sker sjældent, så foretrækker jeg ASP.NET)
Avatar billede k-asp-er Nybegynder
06. juli 2006 - 03:31 #9
Du skal helt klart bruge XML
Hent kildekoden her
http://www.sejerslev.dk/statictext.zip
Avatar billede lifeweb Nybegynder
08. juli 2006 - 14:39 #10
det krævede lige en del tid at forstå din kode - men umiddelbart er det det jeg skal bruge.

Tak for hjælpen!
Avatar billede lifeweb Nybegynder
08. juli 2006 - 14:42 #11
ja... det virker - men hvad er fordelen ved at bruge XML??

Fremfor eksempelvis at hente tingene ind fra en database eller en sprogfil...??

Kræver det færre ressourcer fra serveren, eller opdateringsmæssigt???
Avatar billede k-asp-er Nybegynder
11. juli 2006 - 01:56 #12
XML kræver færre ressourcer OG XML-dokumenter er reelt platformsuafhængige. Desuden kan XML anvendes i andre sammenhænge - eksempelvis i flash.
Avatar billede md_craig Nybegynder
11. juli 2006 - 10:54 #13
k-asp-er ->

Kommer da an på hvilke resourcer du snakker om...
XML kræver typisk mere diskplads end INI filer, grundet tags osv, XML kræver mindre diskplads end databaser, XML er ikke hurtigere at læse igennem end andre text baserede filer, tværtimod som oftest (minimal forskel dog)...

En indexeret fil ville kunne være meget hurtigere end en XML fil fx...
Og så igen, ville man evt. kunne indexere sin XML fil, kræver dog modsat at man igen overholder XML og jeg tror også man bliver nød til at implementere sin egen reader...

XML har sådan set kun den fordel i forhold til alm. text, at det er en standardt som der allerede er implementeret, man kunne nemt efterligne... Og platformsuafhængigt... altså det er jo ren text så det kan jo ligsom svært at argumentere for andet... så vil jeg mene er lidt nonsens at snakke om, XML readerne er ikke platformsuafhængige altid... fx den i ASP nok ikke...

Lifeweb ->

Text/XML er klart bedst når vi snakker statisk informationer, dvs. hjemmeside tekster der ikke ændres ofte og fra mange sider... Hvorimod databaser egner sig bedre til sider hvor tekster ændres meget hyppigt og af mange bruger, som fx det forum her, det ville XML slet ikke kunne håndtere ud fra hvor lang tid det ville tage at kigge sådan en XML fil igennem...

Yderligere vil jeg foreslå du splitter dine XML filer op i mere end en, dette skaber efter min mening bedre overskuelighed... og så vil det kræve mindre resourcer...
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
Kurser inden for grundlæggende programmering

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