繁体   English   中英

如何替换文本文件中的特定行。java

[英]How to replace specific line in text file.java

基本上,我正在编写一个程序,该程序需要能够通过遍历每一行并比较来替换特定的文本行,或者能够获取行号,然后用新文本替换它,最好是第二种解决方案。 所以说我有一个文本文件

the
sky
is
blue

我想用海洋代替天空这个词。 要么我可以说循环并找到值天空的单词,要么我可以指定我要替换的行在第 2 行,然后像这样替换它。 无论哪种方式,解决方案都应该是

the
ocean
is
blue

我不知道如何做到这一点任何帮助表示赞赏。

创建并打开 stream 文件。 然后,在循环中逐行读取并写入您使用另一个 ZF7B44CFFAFD5C52223D5498196C8A2E7BZ 创建的新文件,当您的循环计数器变量等于您想要的行号时,然后写入新行而不是那个,让循环完成。 最后,关闭两个流。 请记住,第一行不是 1,而是 0。请记住,您必须循环直到到达文件末尾,您必须独立维护一个循环变量,这意味着您不能使用 for 循环,而是使用 while 循环。

读取文件并替换您想要的单词

     public static void main(String[] args) throws IOException {
        File file = new File("file.txt");
        BufferedReader reader = new BufferedReader(new FileReader(file));

        String words = "", list = "";

        while ((words = reader.readLine()) != null) {
            list += words + "\r\n";
        }
        reader.close();

        String replacedtext = list.replaceAll("sky", "" + "ocean");

        FileWriter writer = new FileWriter("file.txt");
        writer.write(replacedtext);
        writer.close();

    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM