diff --git a/23-project-log-parser/02-project-file-parser/log.txt b/23-project-log-parser/02-project-file-parser/log.txt index 146d527..fb2432b 100644 --- a/23-project-log-parser/02-project-file-parser/log.txt +++ b/23-project-log-parser/02-project-file-parser/log.txt @@ -1,11 +1,6 @@ learngoprogramming.com 10 -learngoprogramming.com 5 -learngoprogramming.com -learngoprogramming.com 20 +learngoprogramming.com 10 golang.org 4 golang.org 6 -golang.org 5 -golang.org 10 -blog.golang.org 5 blog.golang.org 20 -blog.golang.org 10 +blog.golang.org 10 \ No newline at end of file diff --git a/23-project-log-parser/02-project-file-parser/log_err_missing.txt b/23-project-log-parser/02-project-file-parser/log_err_missing.txt new file mode 100644 index 0000000..fd8eff4 --- /dev/null +++ b/23-project-log-parser/02-project-file-parser/log_err_missing.txt @@ -0,0 +1,6 @@ +learngoprogramming.com 10 +learngoprogramming.com 10 +golang.org +golang.org 6 +blog.golang.org 20 +blog.golang.org 10 \ No newline at end of file diff --git a/23-project-log-parser/02-project-file-parser/log_err_negative.txt b/23-project-log-parser/02-project-file-parser/log_err_negative.txt new file mode 100644 index 0000000..60485c0 --- /dev/null +++ b/23-project-log-parser/02-project-file-parser/log_err_negative.txt @@ -0,0 +1,6 @@ +learngoprogramming.com 10 +learngoprogramming.com 10 +golang.org -100 +golang.org 6 +blog.golang.org 20 +blog.golang.org 10 \ No newline at end of file diff --git a/23-project-log-parser/02-project-file-parser/log_err_str.txt b/23-project-log-parser/02-project-file-parser/log_err_str.txt new file mode 100644 index 0000000..3a55bd7 --- /dev/null +++ b/23-project-log-parser/02-project-file-parser/log_err_str.txt @@ -0,0 +1,6 @@ +learngoprogramming.com 10 +learngoprogramming.com 10 +golang.org FOUR +golang.org 6 +blog.golang.org 20 +blog.golang.org 10 \ No newline at end of file diff --git a/23-project-log-parser/02-project-file-parser/main.go b/23-project-log-parser/02-project-file-parser/main.go index d0b8ead..7960506 100644 --- a/23-project-log-parser/02-project-file-parser/main.go +++ b/23-project-log-parser/02-project-file-parser/main.go @@ -27,8 +27,7 @@ func main() { ) // Scan the standard-in line by line - for line := 0; in.Scan(); line++ { - + for line := 1; in.Scan(); line++ { // Parse the fields fields := strings.Fields(in.Text()) if len(fields) != 2 { @@ -43,8 +42,8 @@ func main() { } // Sum the total visits per domain - n, _ := strconv.Atoi(visits) - if n < 0 { + n, err := strconv.Atoi(visits) + if n < 0 || err != nil { fmt.Printf("wrong input: %q (line #%d)\n", visits, line) return }