Skip to content

Commit b96a5cc

Browse files
committed
Update CSVDecoder.
1 parent d73f077 commit b96a5cc

2 files changed

Lines changed: 6 additions & 10 deletions

File tree

kilo-client/src/main/java/org/httprpc/kilo/io/CSVDecoder.java

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
* Decodes CSV content.
2626
*/
2727
public class CSVDecoder extends Decoder<List<String>> {
28-
private static final char DELIMITER = ',';
28+
private StringBuilder valueBuilder = new StringBuilder();
2929

3030
@Override
3131
public List<String> read(Reader reader) throws IOException {
@@ -37,16 +37,14 @@ public List<String> read(Reader reader) throws IOException {
3737
}
3838

3939
private List<String> decode(Reader reader) throws IOException {
40-
var row = new ArrayList<String>();
41-
42-
var valueBuilder = new StringBuilder();
43-
4440
var c = reader.read();
4541

4642
if (c == EOF) {
4743
return null;
4844
}
4945

46+
var row = new ArrayList<String>();
47+
5048
while (c != '\r' && c != '\n' && c != EOF) {
5149
valueBuilder.setLength(0);
5250

@@ -58,7 +56,7 @@ private List<String> decode(Reader reader) throws IOException {
5856
c = reader.read();
5957
}
6058

61-
while ((quoted || (c != DELIMITER && c != '\r' && c != '\n')) && c != EOF) {
59+
while ((quoted || (c != ',' && c != '\r' && c != '\n')) && c != EOF) {
6260
valueBuilder.append((char)c);
6361

6462
c = reader.read();
@@ -78,7 +76,7 @@ private List<String> decode(Reader reader) throws IOException {
7876

7977
row.add(valueBuilder.toString());
8078

81-
if (c == DELIMITER) {
79+
if (c == ',') {
8280
c = reader.read();
8381
}
8482
}

kilo-client/src/main/java/org/httprpc/kilo/io/CSVEncoder.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,6 @@
3030
public class CSVEncoder extends Encoder<Iterable<?>> {
3131
private Map<Class<?>, Function<Object, String>> formatters = new HashMap<>();
3232

33-
private static final char DELIMITER = ',';
34-
3533
/**
3634
* Associates a formatter with a type.
3735
*
@@ -71,7 +69,7 @@ private void encode(Iterable<?> row, Writer writer) throws IOException {
7169

7270
for (var value : row) {
7371
if (i > 0) {
74-
writer.write(DELIMITER);
72+
writer.write(',');
7573
}
7674

7775
encode(value, writer);

0 commit comments

Comments
 (0)