Почему System.getProperty ("line.seperator") возвращает ноль? - PullRequest
5 голосов
/ 11 апреля 2011

Точно так, как спрашивает заголовок, почему System.getProperty ("line.seperator") возвращает ноль.

Оглядываясь вокруг, я понимаю, что этого не должно быть.

Запуск этого кода показывает, что он, кажется, установлен, так как строка с разделителем разорвана:

class Test { 
    public static void main( String[] args ) { 
        System.out.println(System.getProperties()); 
    } 
}

$ java Test 
{java.runtime.name=Java(TM) SE Runtime Environment, sun.boot.library.path=/usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/i386, java.vm.version=19.1-b02, java.vm.vendor=Sun Microsystems Inc., java.vendor.url=http://java.sun.com/, path.separator=:, java.vm.name=Java HotSpot(TM) Server VM, file.encoding.pkg=sun.io, sun.java.launcher=SUN_STANDARD, user.country=GB, sun.os.patch.level=unknown, java.vm.specification.name=Java Virtual Machine Specification, user.dir=/home/niko, java.runtime.version=1.6.0_24-b07, java.awt.graphicsenv=sun.awt.X11GraphicsEnvironment, java.endorsed.dirs=/usr/lib/jvm/java-6-sun-1.6.0.24/jre/lib/endorsed, os.arch=i386, java.io.tmpdir=/tmp, line.separator=
, java.vm.specification.vendor=Sun Microsystems Inc., os.name=Linux, (And so on...)

Однако, пытаясь получить это в коде, я получаю нулевое значение:

class Test{ 
    public static void main( String[] args ) { 
        System.out.println("This is not " + System.getProperty("line.seperator") + "Broken");
    } 
}

$ java Test
This is not nullBroken

Я использую Ubuntu 10.10 и Java (сборка 1.6.0_24-b07).

Спасибо

1 Ответ

20 голосов
/ 11 апреля 2011

Вы ошиблись line.separator.

...