0

下面是我尝试将控制台上的输出打印到文本文件的代码。代码的主要思想是从 csv 文件中获取值并将输出打印到文本文件中。有人可以让我知道如何实现这一目标。

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

import com.csvreader.CsvReader;

public class projectInfo {
    public static void main(String[] args) {

        StringBuffer buffer = new StringBuffer();

        Connection conn;

        int count = 0;

        String sampleIddisp = null;
        String sample_name = null;
        String compound_name = null;
        String registration_date = null;

            }
            products.close();

        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            System.out.println("\n Total number of records processed:" + count);

        }
    }
}
4

1 回答 1

4

您永远不会在您的 中放置任何内容StringBuffer buffer,因此当您将其写入文件时它是空的:

bw.write(buffer.toString());

buffer可能会在这里消耗大量内存。

将数据写入文件的更好方法是在从数据库读取数据时写入数据:

while (rs.next()) {
   sampleIddisp = rs.getString(1);
   ...

   bw.write(....);
}
于 2012-10-15T19:57:41.287 回答