Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8646399
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 12, 20262026-06-12T12:47:50+00:00 2026-06-12T12:47:50+00:00

Reading from a CSV and it skips every second line. I have two CSV

  • 0

Reading from a CSV and it skips every second line. I have two CSV files, one for users, one for properties – the key ID is user.

    String userName;
    static String breakLine = "\n--------------------\n";
        /**
        * Method to create a new user in a CSV File
        * @param sFileName
        * @param user
        */
   static void writeToCsvFile(String sFileName, User user)
   {
    try
    {
        FileWriter writer = new FileWriter(sFileName, true);


        writer.append(user.displayUserName()); // get username from userinput
        writer.append(","); // tabs to next record

        writer.append(user.getPassword()); //gets password from userinput
        writer.append(","); //tabs to next record
        writer.append("\n");

        writer.flush();
        writer.close();
        System.out.print("\nUser Successfully Created\n");
    }
    catch(IOException e)
    {
         e.printStackTrace();
    } 

   }





   /**
    * Class to read User information from specified CSV file
    * @param sFileName
    * @param user
    * @throws FileNotFoundException
    */
   static boolean readFromCsvFile(String sFileName, User user) throws FileNotFoundException
   {
       String thisLine;
       BufferedReader reader = new BufferedReader(new FileReader(sFileName));


        try
        {

        //  thisLine = reader.readLine();
          //System.out.print(thisLine);


           while((thisLine = reader.readLine()) != null)
                {
                    String userDetails[] = thisLine.split(",");

                    if ((user.displayUserName().equals(userDetails[0])))
                    {
                        System.out.print("\nUser <-" + user.displayUserName() + " -> exists! Logging In\n\n");
                        return true;
                    }

                    else if ((thisLine = reader.readLine()) == null)
                    {
                        System.out.print("\nNo User Details Matching Those Entered Exist. Please Register or Recheck Details.");
                        return false;
                    }
               }

        }
        catch(IOException e)
        {
            System.out.print("\nUser does not exist\n"); 
            e.printStackTrace();
            return false;
        } 


        finally{
            try
            {   reader.close();
            }catch (IOException e){}}
        return false;
            }


   static void writeToPropertyFile(String sFileName, Property property)
   {

    try
    {
        FileWriter writer = new FileWriter(sFileName, true);



        writer.append(property.getUser()); // get username from userinput
        writer.append(","); // tabs to next record

        writer.append(property.getAddress()); //gets address from userinput
        writer.append(","); //tabs to next record

        writer.append(property.getValue()); //gets property value from userinput
        writer.append(","); //tabs to next record

        writer.append(property.getLocation()); //gets property type from userinput
        writer.append(","); //tabs to next record

        writer.append(property.getResidenceStatus()); //gets residence status from userinput
        writer.append(","); //tabs to next record

        writer.append(property.getPaymentStatus()); //gets payment status from userinput
        writer.append(","); //tabs to next record

        writer.append(property.totalTax(property.privateResidence));
        writer.append(",");

        writer.append("\n");

        writer.flush();
        writer.close();
        System.out.print("\nProperty Successfully Saved to " + property.getUser() + "\n");
    }
    catch(IOException e)
    {
         e.printStackTrace();
    } 

   }

/**
 * Method to read and print all properties belonging to a user
 * @param sFileName
 * @param property
 * @param userName
 * @throws FileNotFoundException
 */
static void readFromPropertyFile(String sFileName, String userName) throws FileNotFoundException
{

       String thisLine;
       BufferedReader reader = new BufferedReader(new FileReader(sFileName));


        try
        {
            //thisLine = reader.readLine(); //skips first line in CSV


           while((thisLine = reader.readLine()) != null)
                {

                    String propertyDetails[] = thisLine.split(",");



                    if (propertyDetails[0].equals(userName))
                    {
                    System.out.print("\nUser: " + propertyDetails[0] + "\nAddress: " + propertyDetails[1] + "\nEst. Value: " + propertyDetails[2]
                            + "\nLocation Cat: " + propertyDetails[3] + "\nPrivate Residence: " + propertyDetails[4] + "\nTax Paid: " + propertyDetails[5] +  "\nTax Due: " + propertyDetails[6] + breakLine);

                    }

                    else if ((thisLine = reader.readLine()) == null)
                        System.out.print("\nNo Further Properties Found For This User\n");


               }

        }
        catch(IOException e)
        {
            System.out.print("\nProperties do not exist\n"); 
            e.printStackTrace();
        } 


        finally{
            try
            {   reader.close();
            }catch (IOException e){}}
            }


}

I was running it with the following users

Chris,password
Michelle,password
Zach,password
etc (on seperate lines, seperated by appending \n at the end of the input stage)

Every odd numbered one was working and detecting that the user was logged in, each second one is skipping. I read up and I don’t think I have a .nextLine() running skipping as in this link but I only starting using CSVs and BufferedReader on Friday!

BufferedReader readLine skipping every second line

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-12T12:47:52+00:00Added an answer on June 12, 2026 at 12:47 pm

    Its skipping every second line because you are reading two lines in every iteration and only using the odd ones.

    I suggest instead using

    while ((thisLine = reader.readLine()) != null) { // only read once per loop.
        String propertyDetails[] = thisLine.split(",");
        if (propertyDetails[0].equals(userName)) {
            System.out.print("\nUser: " + propertyDetails[0] + "\nAddress: " + propertyDetails[1] + "\nEst. Value: " + propertyDetails[2]
                    + "\nLocation Cat: " + propertyDetails[3] + "\nPrivate Residence: " + propertyDetails[4] + "\nTax Paid: " + propertyDetails[5] + "\nTax Due: " + propertyDetails[6] + breakLine);
    
        }
    }
    // out side the loop.
    System.out.print("\nNo Further Properties Found For This User\n");
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I'm reading from a CSV, line by line and tokenizing each comma separated value.
I have a C# winforms that is reading a column from a csv file.
Im having trouble reading from a CSV file final String DELIMITER = ,; Scanner
I'm reading in from a CSV file, parsing it, and storing the data, pretty
We are importing from CSV to SQL. To do so, we are reading the
I am reading data from a Comma-separated Value (CSV) document and saving its contents
I am reading a date value from the CSV file and the value is
I'm trying to call the LumenWorks .csv file reading library from a C++/CLI application
I am reading a dataset with the following code from the directory: df= read.csv('101_E424690_N566610.csv',
How I can start reading from a specific byte? I have following code: try

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.