datai/docs/reference-code/force-wsc-57.0.0/com/sforce/bulk/CsvWriter.java

46 lines
974 B
Java

package com.sforce.bulk;
import java.io.PrintWriter;
import java.io.Writer;
public class CsvWriter {
private PrintWriter writer;
public CsvWriter(String[] headers, Writer w) {
assert headers != null;
assert headers.length != 0;
this.writer = new PrintWriter(w, true);
writeRecord(headers);
}
public void writeRecord(String[] values) {
assert values != null;
writeFirstField(values[0]);
for (int i = 1; i < values.length; i++)
writeField(values[i]);
endRecord();
}
public void endDocument() {
this.writer.close();
}
public void endRecord() {
this.writer.println();
}
public void writeField(String value) {
this.writer.print(",");
writeFirstField(value);
}
public void writeFirstField(String value) {
if (value == null)
return;
this.writer.print("\"");
value = value.replaceAll("\"", "\"\"");
this.writer.print(value);
this.writer.print("\"");
}
}