Documentation ¶
Overview ¶
Package csv エクセルとCSVを相互運用するためのパッケージ
Example (Reader) ¶
package main import ( "fmt" "os" "github.com/topgate/goutils/interop/excel/csv" ) func main() { file, err := os.Open("some_sjis_utf8withbom.csv") if err != nil { panic(err) } reader := csv.NewReader(file) data, err := reader.ReadAll() if err != nil { panic(err) } fmt.Printf("%v", data) }
Output:
Example (Writer) ¶
package main import ( "os" "github.com/topgate/goutils/interop/excel/csv" ) func main() { file, err := os.Create("some.csv") if err != nil { panic(err) } writer := csv.NewUTF8WithBOMWriter(file) defer writer.Flush() err = writer.WriteAll([][]string{ []string{"header1", "header2"}, []string{"val1", "val2"}, }) if err != nil { panic(err) } }
Output:
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var UTF8BOM = [3]byte{0xEF, 0xBB, 0xBF}
UTF8BOM UTF8のBOM
Functions ¶
func NewReader ¶
NewReader 与えられたio.Readerを元に新しいcsvリーダーを返す
Example ¶
package main import ( "os" "github.com/topgate/goutils/interop/excel/csv" ) func main() { file, err := os.Open("some.csv") if err != nil { panic(err) } csv.NewReader(file) }
Output:
func NewSJISReader ¶
NewSJISReader 与えられたio.Readerを元に新しいリーダーを返す
Example ¶
package main import ( "os" "github.com/topgate/goutils/interop/excel/csv" ) func main() { file, err := os.Open("some.csv") if err != nil { panic(err) } csv.NewSJISReader(file) }
Output:
func NewSJISWriter ¶
NewSJISWriter 与えられたio.Writerを元に新しいSJISのcsvライターを返す。
UseCRLFはデフォルトでtrueが設定される ¶
panicが発生するため*bufio.Writerをwに与えてはならない。 *bufio.Writerを与えるとpanicになるのは、返されるWriterのFlushを呼び出しても、与えた*bufio.WriterのFlushが呼び出されないため。 これはencoding/csvのWriterの設計に依存する制約である。
Example ¶
package main import ( "os" "github.com/topgate/goutils/interop/excel/csv" ) func main() { file, err := os.Open("some.csv") if err != nil { panic(err) } csv.NewSJISWriter(file) }
Output:
func NewUTF8WithBOMReader ¶
NewUTF8WithBOMReader BOM付きUTF8のリーダーを新しく作る
Example ¶
package main import ( "os" "github.com/topgate/goutils/interop/excel/csv" ) func main() { file, err := os.Open("some.csv") if err != nil { panic(err) } csv.NewUTF8WithBOMReader(file) }
Output:
func NewUTF8WithBOMWriter ¶
NewUTF8WithBOMWriter 与えられたio.Writerを元に新しいBOM付きUTF8のcsvライターを返す。
UseCRLFはデフォルトでtrueが設定される。
panicが発生するため*bufio.Writerをwに与えてはならない。 *bufio.Writerを与えるとpanicになるのは、返されるWriterのFlushを呼び出しても、与えた*bufio.WriterのFlushが呼び出されないため。 これはencoding/csvのWriterの設計に依存する制約である。
Example ¶
package main import ( "os" "github.com/topgate/goutils/interop/excel/csv" ) func main() { file, err := os.Open("some.csv") if err != nil { panic(err) } csv.NewUTF8WithBOMWriter(file) }
Output:
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.