Tag: 空格

Java String split()的意外行为

我试图使用String split函数拆分字符串,这是一个例子: String[] list = ” Hello “.split(“\\s+”); System.out.println(“String length: ” + list.length); for (String s : list) { System.out.println(“—-“); System.out.println(s); } 这是输出: String length: 2 —- —- Hello 如您所见,前导空格在String数组中变为空元素,但尾随空格不是。 有谁知道为什么?

在使用Java解析时如何在文档元素之前保留空格?

在我的应用程序中,我改变了一些XML文件,它们的开头如下: … 请注意之前的空白行。 加载,更改和保存后,结果远非令人满意: … 我发现注释和文档节点之间的空白(一个换行符)根本没有在DOM中表示。 以下自包含代码可靠地重现该问题: String source = “\n\n”; byte[] sourceBytes = source.getBytes(“UTF-16”); DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder(); Document doc = builder.parse(new ByteInputStream(sourceBytes, sourceBytes.length)); DOMImplementationLS domImplementation = (DOMImplementationLS) doc.getImplementation(); LSSerializer lsSerializer = domImplementation.createLSSerializer(); System.out.println(lsSerializer.writeToString(doc)); // output: \n 有谁知道如何避免这种情况? 基本上,我希望输出与输入相同。 (我知道xml声明将被重新生成,因为它不是DOM的一部分,但这不是问题。)

包含多个空格的参数上的Runtime.exec

任何人都可以进行以下运行吗? public class ExecTest { public static void main(String[] args) { try { //Notice the multiple spaces in the argument String[] cmd = {“explorer.exe”, “/select,\”C:\\New Folder\\file.txt\””}; //btw this works //String cmd = “explorer.exe /select,\”C:\\New Folder\\file.txt\””; //and surprisingly this doesn’t work //String[] cmd = {“explorer.exe”, “/select,\”C:\\New Folder\\file.txt\””}; //Update: and (as crazy as it seems) the following […]