Avatar billede 2cool Nybegynder
15. december 2001 - 00:18 Der er 11 kommentarer og
2 løsninger

Linjeskift i Java!!

Hey - forhåbentlig et let spørgsmål til en af Jer java hajer! :)

Jeg sammen sætter en streng i et while loop, men hvert gang jeg har sagt ( s = s + \"bla bla bla\" ) vil jeg gerne have et linjeskift - hvordan dælen gør man lige det?

Jeg mener altså ikke en println :) Men noget som man f.eks. i andre sprog kalder chr(10) eller chr(13)
Avatar billede 2cool Nybegynder
15. december 2001 - 00:19 #1
I VB kan man f.eks. gøre sådan her!

do while not rs.EOF
  s = s & \"bla bla bla\" &chr(13)
rs.movenext
loop
Avatar billede Slettet bruger
15. december 2001 - 00:20 #2
Du skal bruge \"\\n\"

Eks:

\"Hej\\nmed\\ndig\"

Hej
med
dig
Avatar billede soreno Praktikant
15. december 2001 - 00:20 #3
\\n
Avatar billede 2cool Nybegynder
15. december 2001 - 00:26 #4
Hatten af for eksperten, hvordan skulle man vide sådan noget? hmm - jeg bliver aldrig Java haj! Kunne I ikke lige tænker Jer at fortælle mig hvor man finder ud af sådan noget - hvor kan jeg finde det i javadoc?
Avatar billede 2cool Nybegynder
15. december 2001 - 00:28 #5
Magik var hurtigst
soreno var præcis og kun ét minut efter :)
Avatar billede soreno Praktikant
15. december 2001 - 00:31 #6
det er escape characters, og står beskrevet i næsten alle begynder bøger om java (og andre sprog):
\\n new line
\\t tab
\\b backspace
\\\" double quote
\\\' single quote
\\? question mark
\\\\ backslash
Avatar billede 2cool Nybegynder
15. december 2001 - 00:33 #7
1000 tak!!
Avatar billede carstenknudsen Nybegynder
15. december 2001 - 16:55 #8
Man skal altid bruge System.getProperty(\"line.separator\");
for at få et linieskift på den aktuelle
platform. \\n er ikke en god ide.
Avatar billede soreno Praktikant
15. december 2001 - 17:01 #9
hvilke platforme understøtter ikke \\n ?
Avatar billede Slettet bruger
15. december 2001 - 17:32 #10
Hmm... Det vil jeg også gerne vide. Java er et platformsuafhængigt sprog, og derfor vil du vel altid kunne bruge \\n til at lave linjeskift...
Avatar billede carstenknudsen Nybegynder
15. december 2001 - 17:59 #11
Det skal jeg ikke kunne sige, det er endda meget
muligt at de fleste platforme accepterer en \\n men
du kan ikke umiddelbart forvente at du kan detektere et linieskift ved at sammenligne med \\n,
se lidt over midten her:
http://java.sun.com/docs/books/tutorial/post1.0/converting/deprecatedIO.html
Avatar billede soreno Praktikant
16. december 2001 - 11:10 #12
ok, det viste jeg ikke.
Men som begynder vil jeg nu alligevel anbefale at bruge \\n
Avatar billede carstenknudsen Nybegynder
16. december 2001 - 16:17 #13
Ja, det vil sikkert også virke udemærket,
men det er måske heller ikke dårligt at
bruge det på den anden måde.  F.eks. kunne
man tro at man kan bruge
System.getProperty(\"line.separator\") når man
sender linieskift til en webserver, men
der skal man bruge \\n. Det er på grund af den
slags små finurligheder at jeg synes man skal
overveje hvilket løsning man bruger, selvom
det kun er til et simpelt linieskift, men kan
f.eks. tilføje en enkelt linie:
public static final String CR = System.getProperty( \"line.separator\" );
til sin klasse.
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