X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=cadi%2Fcore%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Faaf%2Fcadi%2Futil%2FCSV.java;h=35d85b9ac95947b0ceffa9560b15a903ad32a06d;hb=f64f482462b697e06a47ad55aa5447dc829ce727;hp=1d60ae587ac84c0bc0e05cd9636b5fd5941c3a43;hpb=a174f8ddbc5eb78a648fb68b33ef18cb64d81fda;p=aaf%2Fauthz.git diff --git a/cadi/core/src/main/java/org/onap/aaf/cadi/util/CSV.java b/cadi/core/src/main/java/org/onap/aaf/cadi/util/CSV.java index 1d60ae58..35d85b9a 100644 --- a/cadi/core/src/main/java/org/onap/aaf/cadi/util/CSV.java +++ b/cadi/core/src/main/java/org/onap/aaf/cadi/util/CSV.java @@ -44,6 +44,7 @@ public class CSV { private File csv; private Access access; private boolean processAll; + private char delimiter = ','; public CSV(Access access, File file) { this.access = access; @@ -57,6 +58,11 @@ public class CSV { processAll = false; } + public CSV setDelimiter(char delimiter) { + this.delimiter = delimiter; + return this; + } + public String name() { return csv.getName(); } @@ -116,16 +122,25 @@ public class CSV { escape = true; } break; - case ',': - if(quotes) { - sb.append(c); + case 'n': + if(escape) { + sb.append("\\n"); + escape=false; } else { - row.add(sb.toString()); - sb.setLength(0); + sb.append(c); } break; default: - sb.append(c); + if(delimiter==c) { + if(quotes) { + sb.append(c); + } else { + row.add(sb.toString()); + sb.setLength(0); + } + } else { + sb.append(c); + } } } if(sb.length()>0 || c==',') { @@ -201,7 +216,7 @@ public class CSV { if(first) { first = false; } else { - ps.append(','); + ps.append(delimiter); } if(o == null) { } else if(o instanceof String[]) { @@ -245,6 +260,7 @@ public class CSV { } public void close() { + flush(); ps.close(); }