6

タイトルが尋ねるとおり、System.getProperty("line.seperator") が null を返すのはなぜですか。

周りを見回すと、そうすべきではないと思います。

このコードを実行すると、セパレーターのある行が壊れているため、設定されているように見えます。

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...)

ただし、コードでこれを取得しようとすると、null になります。

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) を使用しています。

ありがとう

4

1 に答える 1

23

スペルが間違っていline.separatorます。

于 2011-04-11T13:57:49.830 に答える