From 91098f97aad482885b0ecaf0ca67a12dac8b602c Mon Sep 17 00:00:00 2001 From: BiSaXa <1669855+BiSaXa@users.noreply.github.com> Date: Sat, 27 Aug 2022 14:08:45 +0300 Subject: support for multiple demos in a folder as an argument --- main.go | 39 +++++++++++++++++++++++++++++---------- 1 file changed, 29 insertions(+), 10 deletions(-) (limited to 'main.go') diff --git a/main.go b/main.go index 6f9acb4..417aeeb 100644 --- a/main.go +++ b/main.go @@ -1,6 +1,8 @@ package main import ( + "fmt" + "io/ioutil" "log" "os" "parser/messages" @@ -9,18 +11,35 @@ import ( func main() { if len(os.Args) != 2 { - log.Fatal("Specifiy file in command line arguments.") + log.Fatal("Specify file in command line arguments.") } - file, err := os.Open(os.Args[1]) - utils.CheckError(err) - utils.HeaderOut(file) - for { - code := messages.MessageTypeCheck(file) - if code == 7 { - messages.MessageTypeCheck(file) - break // TODO: Check last CustomData + files, err := ioutil.ReadDir(os.Args[1]) + if err != nil { // If it's not a directory + file, err := os.Open(os.Args[1]) + utils.CheckError(err) + utils.HeaderOut(file) + for { + code := messages.MessageTypeCheck(file) + if code == 7 { + messages.MessageTypeCheck(file) + break // TODO: Check last CustomData + } } + defer file.Close() + } + for _, fileinfo := range files { // If it is a directory + file, err := os.Open(os.Args[1] + fileinfo.Name()) + utils.CheckError(err) + utils.HeaderOut(file) + for { + code := messages.MessageTypeCheck(file) + if code == 7 { + messages.MessageTypeCheck(file) + break // TODO: Check last CustomData + } + } + defer file.Close() } - //defer file.Close() + fmt.Scanln() } -- cgit v1.2.3