Tag: eol

设置以Java结尾的默认行

我在多平台环境(Windows + Linux)中使用Java。 但是,无论我们生成什么文本文件,都应使用LF作为其EOL序列。 有没有办法可以强制Java使用这个EOL序列,无论我在运行程序的平台上怎么办? 我不想改变整个程序,即所有对System.out.println和类似程序的调用应保持原样,只有函数末尾的* ln应该总是输出“0x0A”并且永远不会“ 0x0D 0x0A“。 我可以想到两种不同的方法,但我不知道是否有可能: 覆盖与平台相关的默认EOL序列 让Java相信即使我在DOS命令行上运行程序,我也在运行Linux 这有可能吗? 还是其他什么呢?

我如何使用System.getProperty(“line.separator”)。toString()?

我有一个Tab-delimited字符串(表示一个表),传递给我的方法。 当我将它打印到命令行时,它看起来像一个包含行的表: http://sofzh.miximages.com/java/2fAyq.gif 命令窗口已正确缓冲。 我的想法是每行之前或之后肯定有一个新的行字符。 我的问题是我想将传入的字符串拆分为表示表格行的单个字符串。 到目前为止我有: private static final String newLine = System.getProperty(“line.separator”).toString(); private static final String tab = “\t”; private static String[] rows; … rows = tabDelimitedTable.split(newLine); //problem is here System.out.println(); System.out.println(“################### start debug ####################”); System.out.println((tabDelimitedTable.contains(newLine)) ? “True” : “False”); System.out.println(“#################### end debug###################”); System.out.println(); 输出: ################### start debug #################### False #################### end debug################### […]