将文件的内容附加到另一个具有不同编码的文件



我想附加Path path指向的文件的内容。到路径为String resultFileName的文件。

来源于Cp1250编码,结果为UTF-8编码。我设法做到了,但不幸的是,我在目标文件的末尾添加了备用n。我想去掉那个n

 BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(resultFileName), "utf-8"));
    Files.readAllLines(path, Charset.forName("Windows-1250")).stream().forEach((line) -> {
    try {
        bw.write(line);
        bw.newLine();
        } catch (Exception e) {
            e.printStackTrace();
        }
    });

我认为必须有一个单行,它将一个文件的内容附加到另一个文件,并在此过程中更改编码。

有一个方便的库apache-commons-io,其中存在util类IOUtils

通过这个库,你可以在单行中做你想要的事情:

IOUtils.copy(Files.newBufferedReader(path, StandardCharsets.UTF_8), bw);

相关内容

  • 没有找到相关文章

最新更新