Java 从文件中删除空行
我试图通过在程序中添加以下COEDE来删除文件中的空行Java 从文件中删除空行,java,file,writing,Java,File,Writing,我试图通过在程序中添加以下COEDE来删除文件中的空行 private static void Normalize(File f) throws FileNotFoundException, IOException { if(!temp.exists()){ temp.createNewFile(); } FileOutpu
private static void Normalize(File f) throws FileNotFoundException, IOException {
if(!temp.exists()){
temp.createNewFile();
}
FileOutputStream fop=new FileOutputStream(temp,true);
Set<String> uniqueLines = new HashSet<String>();
BufferedReader br = new BufferedReader(new FileReader(f));
String readLine=br.readLine();
for(final String s : readLine.split(" ")){
fop.write(s.getBytes());
fop.write(System.getProperty("line.separator").getBytes());
}
uniqueLines.add(readLine);
while((readLine=br.readLine())!=null)
{
if (!uniqueLines.contains(readLine)) {
for(final String s : readLine.split(" ")){
fop.write(s.getBytes());
fop.write(System.getProperty("line.separator").getBytes());
}
uniqueLines.add(readLine);
}
}
}
在写入部分,它给出了notsuchelementist
异常用法
while((readLine=br.readLine())!=null)
{
if (readLine.isEmpty() || readLine.trim().equals("") || readLine.trim().equals("\n"))
continue;
...
空行并不意味着它是空的。它肯定会失败。如果它不是空的,那么它就不是空的。我认为这将在空行上工作我认为这是空白的定义。它将删除一些空白,但仍有一个或两个空白。另外,在该函数结束后,当我添加isEmpty部分和删除它时,它将停止继续执行程序的其余部分,它继续执行程序的其余部分,但由于空行引起的异常而停止
while((readLine=br.readLine())!=null)
{
if (readLine.isEmpty() || readLine.trim().equals("") || readLine.trim().equals("\n"))
continue;
...