所以我的代码看起来像这样:
try {
while ((line = br.readLine()) != null) {
Matcher m = urlPattern.matcher (line);
while (m.find()) {
System.out.println(m.group(1));
//the println puts linebreak after each find
String filename= "page.txt";
FileWriter fw = new FileWriter(filename,true);
fw.write(m.group(1));
fw.close();
//the fw writes everything after each find with no line break
}
}
我在行上得到了正确的输出形式,System.out.println(m.group(1));
但是当我以后想要写它所显示的内容时m.group(1)
,由于代码中没有代码,所以无需换行就可以写入文件。
只是打电话fw.write(System.getProperty("line.separator"));
。
System.getProperty("line.separator")
将为您的平台(无论是Windows还是Unix风格)提供行分隔符。
问题内容: 考虑以下功能 在下一行中每次添加要写入的内容? 例如,我想要给定字符串的每个单词在单独的lline中,例如: 写道: 问题答案: 要将文本(而不是原始字节)写入文件,应考虑使用FileWriter。您还应该将其包装在BufferedWriter中,这将为您提供newLine方法。 要将每个单词写在新行上,请使用String.split将您的文本分成单词数组。 因此,这是对您的要求的简单
问题内容: 我们正在从网络服务流式传输CSV文件。看来我们在流式传输时会丢失换行符-客户端将文件全部放在一行上。知道我们在做什么错吗? 码: 问题答案: 不要使用。您已经手头上了,因此只需获取文件的一个,然后通过通常的Java IO方式 将输入中的字节通过管道传输到输出即可。这样,您也不必担心换行符被以下内容吃掉: 如果您不事先知道/指定编码,则使用/ 将涉及字符编码问题。您实际上也不需要在这里了
我有一个应用程序,用户可以写文章,他们将显示在一个网页上。而不是存储所有的文本在数据库中,我想写到一个文本文件并存储它的方式。问题是,我似乎无法让文件保持格式ie换行符。如果用户键入
问题内容: 我的代码: 由于某种原因,它以字符串形式编写,因此文件如下所示: 根据Google的指示,它告诉我使用,但它是回车符,这似乎不是我想要执行的操作。我只希望文件看起来像这样: 谢谢。 问题答案: 替换为。使用时无法识别转义序列。 。 有关如何写行尾的问题,请参见此处的注释。基本上,不同的操作系统对于行尾有不同的约定。Windows使用“ \ r \ n”,基于Unix的操作系统使用“ \
在新的DOCX中,我的XML如下所示: 所以我不知道如何将第二行设置到第一行的相同位置?
问题内容: 我正在不同的机器上运行多个进程,这些进程需要读/写到共享的XML文件,为此我正在使用和(虽然我知道数据库将是一种更有效的方法,但由于项目限制,这种方法不可行) 。 要更改XML文件,相关过程首先创建一个专用锁定的通道,该通道用于读取文件,然后尝试在关闭通道之前重用相同的通道来写入新版本。这样锁就永远不会掉下来。但是,问题是,即使我从未明确关闭通道,尝试写入结果时也会得到提示。我怀疑那行