summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSilvan Jegen <s.jegen@gmail.com>2015-06-14 18:42:47 +0200
committerSilvan Jegen <s.jegen@gmail.com>2015-06-14 18:42:47 +0200
commit8dcfc16dd225192b17376912e7da6e8a066fbd10 (patch)
tree6a478537dcbbcbd700c1c90bf0e45be8c5c9a475
parentfb3e447995699ca216c66f120fa17becc94475e2 (diff)
Use bufiobufio
-rw-r--r--htmlfilter.go20
1 files changed, 10 insertions, 10 deletions
diff --git a/htmlfilter.go b/htmlfilter.go
index dff1188..134c533 100644
--- a/htmlfilter.go
+++ b/htmlfilter.go
@@ -3,6 +3,7 @@
package main
import (
+ "bufio"
"fmt"
"io"
"os"
@@ -11,7 +12,7 @@ import (
)
func main() {
- var unxmlreader io.Reader
+ var unxmlreader *bufio.Reader
f, err := os.Open(os.Args[1])
if err != nil {
@@ -46,26 +47,25 @@ func main() {
//}
//unxmlreader = unxml.NewReaderKeepElements(f, make([]string, 0))
- unxmlreader = unxml.NewReaderKeepElements(f, []string{"div", "p"})
- bufno := 0
+ unxmlreader = bufio.NewReaderSize(unxml.NewReaderKeepElements(f, []string{"div", "p"}), 4096)
+ lineno := 0
- bbuffer := make([]byte, 4096)
+ //bbuffer := make([]byte, 4096)
//bbuffer := make([]byte, 100)
- var n int
for {
- n, err = unxmlreader.Read(bbuffer)
+ s, err := unxmlreader.ReadString(byte('\n'))
if err != nil {
if err == io.EOF {
- fmt.Printf("%s", bbuffer[:n])
+ fmt.Printf("%s", s)
break
}
- fmt.Printf("Error while reading file at line nr. %d: %v\n", bufno, err)
+ fmt.Printf("Error while reading file at line nr. %d: %v\n", lineno, err)
break
}
- bufno++
+ lineno++
//fmt.Printf("Buffer nbr. %d: %s\n", lineno, bbuffer[:n])
- fmt.Printf("%s", bbuffer[:n])
+ fmt.Printf("%s", s)
}
}