gofmt
This commit is contained in:
parent
582365a790
commit
4806216045
|
@ -29,19 +29,19 @@ var EnclosersRunes = map[EncloserId]Encloser{
|
|||
CurlyBrackets: Encloser{'{', '}'},
|
||||
}
|
||||
|
||||
type CsvParser struct {
|
||||
type Parser struct {
|
||||
Enclosers []EncloserId
|
||||
Delimiter string
|
||||
Fields []string
|
||||
Line string
|
||||
}
|
||||
|
||||
func (parser *CsvParser) Init() {
|
||||
func (parser *Parser) Init() {
|
||||
parser.Enclosers = []EncloserId{DoubleQuotes, SquareBrackets}
|
||||
parser.Delimiter = " \t"
|
||||
}
|
||||
|
||||
func (parser *CsvParser) ExtractEnclosedFieldValue(endChar byte) error {
|
||||
func (parser *Parser) ExtractEnclosedFieldValue(endChar byte) error {
|
||||
lineLen := len(parser.Line)
|
||||
for i := 1; i < lineLen; i++ {
|
||||
if parser.Line[i] == endChar && parser.Line[i-1] != '\\' {
|
||||
|
@ -53,7 +53,14 @@ func (parser *CsvParser) ExtractEnclosedFieldValue(endChar byte) error {
|
|||
return errors.New("Encloser close not found")
|
||||
}
|
||||
|
||||
func (parser *CsvParser) Parse(CsvLine string) error {
|
||||
/*
|
||||
* Usage:
|
||||
* import "../csv-parser/"
|
||||
* var parser csvparser.Parser
|
||||
* parser.init()
|
||||
* parser.Parse("a b c d")
|
||||
*/
|
||||
func (parser *Parser) Parse(CsvLine string) error {
|
||||
var err error = nil
|
||||
|
||||
parser.Fields = make([]string,0)
|
||||
|
|
|
@ -6,7 +6,7 @@ import(
|
|||
|
||||
|
||||
func TestParse(t *testing.T) {
|
||||
var parser CsvParser
|
||||
var parser Parser
|
||||
|
||||
var CsvTestValues = [...]string {
|
||||
"field1 field2 field3", // standard CSV
|
||||
|
@ -38,7 +38,7 @@ func TestParse(t *testing.T) {
|
|||
}
|
||||
}
|
||||
func TestParseWithEscape(t *testing.T) {
|
||||
var parser CsvParser
|
||||
var parser Parser
|
||||
|
||||
var CsvTestValues = [...]string {
|
||||
"\"\\\"field1 and more\" field2 [\\[field3] ", // Enclosed fields
|
||||
|
|
Loading…
Reference in New Issue