Java 在JDBC中,由于表的字段/列中出现逗号,csv格式的分隔不正确

Java 在JDBC中,由于表的字段/列中出现逗号,csv格式的分隔不正确,java,csv,jdbc,Java,Csv,Jdbc,列中的值-CALLINGVALUE为“49 TT,5天”,因此列值以csv格式正确打印。如何处理列中的逗号?您可以将每个字段括在引号之间,但如果数据包含引号字符,则会出现问题,在这种情况下,应将其加倍 否则,您可以使用CSV库。这就是我要做的。您想做什么?我试图以逗号分隔的格式导出数据,但数据库表中的一列(列名-CALLINGVALUE)中有一个逗号(例如:49 TT,5天),因此一个列值被拆分为两列。如何将值导出为csv格式? import java.sql.*; public class

列中的值-CALLINGVALUE为“49 TT,5天”,因此列值以csv格式正确打印。如何处理列中的逗号?

您可以将每个字段括在引号之间,但如果数据包含引号字符,则会出现问题,在这种情况下,应将其加倍


否则,您可以使用CSV库。这就是我要做的。

您想做什么?我试图以逗号分隔的格式导出数据,但数据库表中的一列(列名-CALLINGVALUE)中有一个逗号(例如:49 TT,5天),因此一个列值被拆分为两列。如何将值导出为csv格式?
import java.sql.*;


public class Voucher {

    public static void main(String[] args) {

        try {
                 Class.forName("oracle.jdbc.driver.OracleDriver");
                 String dbURL = "jdbc:oracle:thin:user/pwd@IP:PORT:DB";

                 Connection conn = DriverManager.getConnection(dbURL);

                String query = "SELECT CIRCLENAME,CALLINGVALUE,GRACEPERIOD,MINOFUSAGE,MRP,PROCESSINGFEE,SERVICETAX,VALIDITY from AM_PREPAID_VOUCHER_COUPONS A, AM_CIRCLE B WHERE A.CIRCLEID=B.CIRCLEID order by b.CIRCLENAME asc";






                Statement stmt = conn.createStatement();
                ResultSet rs = stmt.executeQuery(query);
                                System.out.println("CIRCLENAME,CALLINGVALUE,GRACEPERIOD,MINOFUSAGE,MRP,PROCESSINGFEE,SERVICETAX,VALIDITY");
                while (rs.next())
                {   

                 String CIRCLENAME = rs.getString("CIRCLENAME");
                 String CALLINGVALUE = rs.getString("CALLINGVALUE");
                 String GRACEPERIOD = rs.getString("GRACEPERIOD");
                 String MINOFUSAGE = rs.getString("MINOFUSAGE");
                 String MRP = rs.getString("MRP");
                 String PROCESSINGFEE = rs.getString("PROCESSINGFEE");
                 String SERVICETAX = rs.getString("SERVICETAX");
                 String VALIDITY = rs.getString("VALIDITY");


                    System.out.println(CIRCLENAME+ "," +CALLINGVALUE+ "," +
                    GRACEPERIOD+ "," +MINOFUSAGE+ "," +MRP+ "," +PROCESSINGFEE+ "," +
                    SERVICETAX+ "," +VALIDITY);

             }

                conn.close();
        }
                catch (Exception e) {
                    System.err.println("Got an exception! ");
                    System.err.println(e.getMessage());
                }

            }

}