我有一个用java编写的.txt文件,它有一个非常特殊的新行排列。当我在windows上编写文件时,这种安排是强制的,但是当我在ubuntu上运行相同的代码时,每个应该有一行的地方都有两个新行。有人知道这是什么原因吗?这是我用来编写的代码:

List<String>toBeWrittenList = new ArrayList<String>();
    for(int x=0; x < finalList.size(); x++){
        toBeWrittenList.add("\n");
        toBeWrittenList.add("==level " + (x+1) +"==");
        for(int y=0; y < finalList.get(x).size();y++){
            if(finalList.get(x).get(y).equals("N"))
                toBeWrittenList.add(y+1 + ". null");
            else
                toBeWrittenList.add(y+1 + ". " + finalList.get(x).get(y));
        }
    }
    try {
        writeSmallTextFile(toBeWrittenList, FILE_NAME3);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

static void writeSmallTextFile(List<String> aLines, String aFileName) throws IOException {
        Path path = Paths.get(aFileName);
        Files.write(path, aLines, ENCODING);
}

最佳答案

我通常使用printwriter方法println来创建文本文件。println将检查您的操作系统并选择正确的feed行(\n或\n\r)。
问题可能存在于文件中。你自己写这门课吗?还是使用第三方库?

09-11 18:57