From 01e9fae48db580bfa7992b2b39bf963a93b133cd Mon Sep 17 00:00:00 2001 From: ArkBriar Date: Fri, 6 Nov 2015 13:30:07 +0800 Subject: [PATCH] Add exercise 12.4: wiki_part1.go --- eBook/exercises/chapter_12/wiki_part1.go | 40 ++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 eBook/exercises/chapter_12/wiki_part1.go diff --git a/eBook/exercises/chapter_12/wiki_part1.go b/eBook/exercises/chapter_12/wiki_part1.go new file mode 100644 index 0000000..a47d978 --- /dev/null +++ b/eBook/exercises/chapter_12/wiki_part1.go @@ -0,0 +1,40 @@ +// wiki_part1.go +package main + +import ( + "fmt" + "io/ioutil" +) + +type Page struct { + Title string + Body []byte +} + +func (this *Page) save() (err error) { + return ioutil.WriteFile(this.Title, this.Body, 0666) +} + +func (this *Page) load(title string) (err error) { + this.Title = title + this.Body, err = ioutil.ReadFile(this.Title) + return err +} + +func main() { + page := Page{ + "Page.md", + []byte("# Page\n## Section1\nThis is section1."), + } + page.save() + + // load from Page.md + var new_page Page + new_page.load("Page.md") + fmt.Println(string(new_page.Body)) +} +/* Output: + * # Page + * ## Section1 + * This is section1. + */