Java实现在读取文件内容的时判断出空白行

  

Java实现在读取文件内容的时判断出空白行?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

<强>一、问题描述:

在用Java读入文件内容时,往往文件中存在空行,有时候用空行来分割不同属性的内容,这个时候,就有必要把这个空行识别出来,在Java中该如何识别空行呢?

<强>二、案例分析:

数据集为:

第一行信息:节点个数开始节点终止节点

第二行信息:空行

第三行到第四十四行信息:边及边的权值

第四十五行信息:空行

第四十六行到第四十七行信息:必过节点

第四十八行信息:空行

第四十九行到第五十行信息:必过边

第五十一行信息:空行

第五十二行到第五十三行信息:不能经过的边

18 S E

3
N1年代N2 1
S N3 1
N1 N9 4
N1陶瓷1
N1 N2 1
N2它们1
N2 N3 1
N2陶瓷2
N3它们2
N3 N6 2
N3 N7 1
陶瓷它们1
陶瓷N9 1
它们N6 1
它们N12 3
它们N10 1
3
它们N9 N6 N12 2
N6 N13 4
N6 N14 3
N6 N8 2
N6 N7 1
N7 N8 1
N8 N14 1
3
N8 N15 N9 N10 1
N9 N11 1
N10 N11 1
N10 N12 2
N11 N12 1
N11但1
不行了N12 N13 2
N12但1
N13不行了但2
不行了N13 N14 1
N13 N15 2
N14 N15 1
E但1
E不行了N13 1
E N15 4

N7
N12

N2陶瓷
N13 N14

N11 N12

现在需要把这些信息都给读出来,代码为:

进口java.util。*;
  进口java.util.Map.Entry;
  进口. io . *;
  
  公开课choosePath {
  私有静态ArrayList arrayListOfChoosedPath=new ArrayList ();
  私有静态ArrayList arrayListOfMustThoughNode=new ArrayList ();
  私有静态ArrayList arrayListOfMustThoughEdge=new ArrayList ();
  私有静态ArrayList arrayListOfCanNotThoughEdge=new ArrayList ();
  
  私有静态int needOfNode;
  
  公共静态void main (String [] args)抛出IOException {//sumCol变量用于记录数据集中边的数量
  int sumCol=0;
  BufferedReader bfr2=new BufferedReader(新FileReader (
  “C://用户/管理员//桌面//文字//case.txt"));
  bfr2.readLine ();
  bfr2.readLine ();
  而(! bfr2.readLine () .equals (“;”)) {
  sumCol + +;
  }
  System.out.println (“tempcol=? sumCol);
  
  
  字符串tempMustThoughNode=零;
  而(! (tempMustThoughNode=bfr2.readLine ()) .equals (“;”)) {
  System.out.println (tempMustThoughNode);
  arrayListOfMustThoughNode.add (tempMustThoughNode);
  }
  而(! (tempMustThoughNode=bfr2.readLine ()) .equals (“;”)) {
  System.out.println (tempMustThoughNode);
  arrayListOfMustThoughEdge.add (tempMustThoughNode.split (““)[0]);
  arrayListOfMustThoughEdge.add (tempMustThoughNode.split (““)[1]);
  }
  
  在((tempMustThoughNode=bfr2.readLine ()) !=null) {
  System.out.println (tempMustThoughNode);
  arrayListOfCanNotThoughEdge.add (tempMustThoughNode.split (““)[0]);
  arrayListOfCanNotThoughEdge.add (tempMustThoughNode.split (““)[1]);
  }
  bfr2.close ();
  }
  }

输出信息为

tempcol=41
N7
N12
N2陶瓷
N13 N14
N11 N12

在Java中,判断空行的方法是:

bfr。readLine () .equals (“;”);

<强> java获取txt文件内容按照行,空格解析

我就废话不多说了,大家还是直接看代码吧~

公共静态字符串txt2String(文件文件){
  StringBuilder结果=new StringBuilder ();
  尝试{
  BufferedReader br=new BufferedReader(新FileReader(文件));//构造一个BufferedReader类来读取文件
  字符串s=零;
  而((s=br.readLine ()) !=null){//使用readLine方法,一次读一行
  result.append (System.lineSeparator () + s);
  }
  br.close ();
  }捕捉(异常e) {
  e.printStackTrace ();
  }
  返回result.toString ();
  }
  
  公共静态void main (String [] args) {
  文件文件=新文件(“C: \ \ \ \ \ \用户管理员桌面\ \文件名.txt");
  字符串s=txt2String(文件);
  String []=s.split分裂(“\ \ r& # 63; \ \ n");
  (字符串s1:分裂){
  如果(s1.length()在0) {
  String [] split1=s1.split (“\ \ s +“);
  (字符串s2: split1) {
  如果(s2.length()在0) {
  System.out.println (s2);
  }
  }
  }
  
  }
  }

Java实现在读取文件内容的时判断出空白行