title: Read large CSV in java
body: <p>I want to read huge data from CSV, containing around 500,000 rows.
  I am using OpenCSV library for it. My code for it is like this</p>
  
  <pre><code>    CsvToBean&lt;User&gt; csvConvertor = new CsvToBean&lt;User&gt;();
      List&lt;User&gt; list = null;
      try {
          list =csvConvertor.parse(strategy, new BufferedReader(new FileReader(filepath)));
      } catch (FileNotFoundException e) {
          e.printStackTrace();
      }
  </code></pre>
  
  <p>Upto 200,000 records,data is read into list of User bean objects. But for data more than that I am getting</p>
  
  <pre><code>java.lang.OutOfMemoryError: Java heap space
  </code></pre>
  
  <p>I have this memory setting in "eclipse.ini" file</p>
  
  <pre><code>-Xms256m
  -Xmx1024m
  </code></pre>
  
  <p>I am thinking a solution of splitting the huge file in separate files and read those files again, which I think is a lengthy solution. </p>
  
  <p>Is there any other way, by which I can avoid OutOfMemoryError exception.</p>