在java中读取包含新行的文本文件

mlmc2os5  于 2021-07-08  发布在  Java
关注(0)|答案(3)|浏览(296)

这个问题在这里已经有答案了

如何从文件中读取.lines(…).foreach(…)(5个答案)
上个月关门了。
我想用新行读取我的文本文件,例如,我有那个txt文件;
我是一个段落。单击此处添加您自己的文本并编辑我。很简单。点击?编辑文本?或者双击我添加您自己的内容并更改字体。请随意将我拖放到页面上任何你喜欢的地方。我是一个很好的地方,让你讲一个故事,让你的用户知道你多一点。
这是一个很好的空间来写关于你的公司和你的服务的长文本。你可以利用这个空间更详细地了解你的公司。谈谈你的团队和你提供的服务。告诉你的访客你是如何为你的生意想出这个主意的,以及是什么让你不同于你的竞争对手。让你的公司脱颖而出,让你的访客知道你是谁。
我想看看那个文件。
我试过这个代码:

FileReader fr = 
  new FileReader("C:\\Users\\pankaj\\Desktop\\test.txt"); 

int i; 
while ((i=fr.read()) != -1) 
  System.out.print((char) i); 
}

但是没有新词。
有没有什么方法可以得到带换行符的文本文件?

zi8p0yeb

zi8p0yeb1#

您可以使用任何支持readline()的读取器,该读取器在不使用结束行分隔符的情况下读取文本的下一行,但您可以使用system.lineseparator()添加该读取器。
另一种方法是读取文件中的所有字节并将其转换为字符串。java.nio.file.files类中有多个实用工具方法。例子:

RandomAccessFile raf=new RandomAccessFile(yourFile,"r");
String text="";
for(String line=raf.readLine();line!=null;line=raf.readLine()){
text+=line+System.lineSeparator();
}

例2:

String text=Files.readString(yourPath);

例3:

String text=new String(Files.readAllLines(yourPath), StandardCharsets.UTF_8);
j0pj023g

j0pj023g2#

可以使用scanner类

Scanner sc = new Scanner(file);       
while (sc.hasNextLine())  {
      System.out.println(sc.nextLine()); 
}
bwntbbo3

bwntbbo33#

你可以这样做:

try(BufferedReader br = new BufferedReader(new FileReader(pathToYourFile))) {
    String line = br.readLine();

    while (line != null) {
        // do something with your line, like printing it or appending to a StringBuilder
        System.out.println(line);
        line = br.readLine();
    }
}

或者从这里或者这里的答案中找出其他的可能性。

相关问题