Avatar billede arnejan Nybegynder
20. november 2003 - 19:04 Der er 5 kommentarer og
1 løsning

DataInputStream.readLine()

Hej,

Hvis man bruger DataInputStream.readLine() hvad er så linjeskiftet, hvilke byte skal man sende for at java synes der er linjeskift.

Jeg ved godt at DataInputStream.readLine() er deprecated, men det er vel ligemeget når jeg sender mine strenge ved først at oversætte dem til en bytearray, og så sende denne bytearray.

?
Avatar billede soreno Praktikant
20. november 2003 - 19:18 #1
String temp = System.getProperty("line.separator");
byte newLine[] = temp.getBytes();
Avatar billede soreno Praktikant
20. november 2003 - 19:20 #2
Du bør nok selv specificere hvad som skal være linieskift.
Der er nemlig forskel på hvordan det gøres på Windows, Linux og MAC.
Avatar billede soreno Praktikant
20. november 2003 - 19:27 #3
line.separator er:
Windows - CR LF
Linux - LF
MAC - CR

Du kan se værdien af line.separator på forskellige platforme her:
http://www.tolstoy.com/samizdat/sysprops.html
Avatar billede arne_v Ekspert
20. november 2003 - 19:33 #4
DataInputStream accepterer alle 3 som linie-skift altså \r\n og \n og \r.

Prøv selv:

import java.io.*;

public class RL {
    public static void main(String[] args) throws Exception {
        byte[] b = { 65, 13, 10, 66, 66, 10, 67, 67, 67, 13, 68, 68, 68 , 68 };
        ByteArrayInputStream bais = new ByteArrayInputStream(b);
        DataInputStream dis = new DataInputStream(bais);
        String line;
        while((line = dis.readLine()) != null) {
            System.out.println(line);
        }
    }
}
Avatar billede arne_v Ekspert
20. november 2003 - 19:35 #5
Iøvrigt er der en del operativ systemer (dog ikke de gængse på skrive
bordet), som slet ikke bruger linie separator i tekst filer.
Avatar billede arne_v Ekspert
30. november 2003 - 22:55 #6
Lukke tid ?
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