MCPcopy
hub / github.com/apache/devlake / NewCsvFileWriter

Function NewCsvFileWriter

backend/helpers/pluginhelper/csv_file_writer.go:40–65  ·  view source on GitHub ↗

NewCsvFileWriter create a `*CsvFileWriter` based on path to saving csv file

(csvPath string, fields []string)

Source from the content-addressed store, hash-verified

38
39// NewCsvFileWriter create a `*CsvFileWriter` based on path to saving csv file
40func NewCsvFileWriter(csvPath string, fields []string) (*CsvFileWriter, errors.Error) {
41 // open csv file
42 if filepath.Ext(csvPath) != ".csv" {
43 return nil, errors.BadInput.New("the file does not have \".csv\" extension")
44 }
45
46 csvFile, err := os.Create(csvPath)
47 if err != nil {
48 panic(err)
49 }
50 csvWriter := csv.NewWriter(csvFile)
51 // write field names
52 err = csvWriter.Write(fields)
53 if err != nil {
54 panic(err)
55 }
56 csvWriter.Flush()
57 if err != nil {
58 panic(err)
59 }
60 return &CsvFileWriter{
61 file: csvFile,
62 writer: csvWriter,
63 fields: fields,
64 }, nil
65}
66
67// Close releases resource
68func (ci *CsvFileWriter) Close() {

Callers 2

TestExampleCsvFileFunction · 0.85
TestWrongCsvPathFunction · 0.85

Calls 4

NewMethod · 0.65
CreateMethod · 0.65
WriteMethod · 0.45
FlushMethod · 0.45

Tested by 2

TestExampleCsvFileFunction · 0.68
TestWrongCsvPathFunction · 0.68