Wednesday, July 25, 2012

Program to read the last line in a file


import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.io.LineNumberReader;

/**
 * Reads the last line in a file
 */
public class ReadLastLine
{
            private static String getLastLine(int i, File aFile)
            {
                        String sLast = "";
                        try
                        {
                                    LineNumberReader lineNumberReader = null;
                                    lineNumberReader = new LineNumberReader(new FileReader(aFile));
                                    String line = null;
                                    while ((line = lineNumberReader.readLine()) != null)
                                    {
                                                if (lineNumberReader.getLineNumber() == i)
                                                {
                                                            sLast = line;
                                                }
                                    }
                        }
                        catch (IOException ex)
                        {
                                    System.out.println("IOException in reading last line of file:-" + ex);
                        }
                        return sLast;
            }

           
            public static void main(String[] args)
            {
                        String sFile = "Test.txt";
                        int nLine = getLines(new File(sFile));
                        String sLastLine = getLastLine(nLine, new File(sFile));
                        System.out.println("Last Line=" + sLastLine);
            }

            private static int getLines(File aFile)
            {
                        LineNumberReader lineNumberreader = null;
                        try
                        {
                                    lineNumberreader = new LineNumberReader(new FileReader(aFile));
                                    while ((lineNumberreader.readLine()) != null)
                                    {
                                    }
                                    return lineNumberreader.getLineNumber();
                        }
                        catch (Exception ex)
                        {
                                    System.out.println("exception in reading the file:-" + ex);
                                    return -1;
                        }
                        finally
                        {
                                    if (lineNumberreader != null)
                                    {
                                                try
                                                {
                                                            lineNumberreader.close();
                                                }
                                                catch (IOException ex)
                                                {
                                                            System.out.println("Exception in closing linenumberreader:-" + ex);
                                                }
                                    }
                        }
            }
}

No comments:

Post a Comment

Thanks for visiting my Blog....Ur comments n suggestions are most valuable for me...Thanks