Adding the challenge 0405

This commit is contained in:
2026-08-19 21:45:52 +02:00
parent b45b8dd14c
commit 9e9e63f4ab
15 changed files with 2011 additions and 0 deletions
+40
View File
@@ -0,0 +1,40 @@
package db0405
import (
"io"
"os"
)
type Log struct {
FileName string
fp *os.File
}
func (log *Log) Open() (err error) {
log.fp, err = createFileSync(log.FileName)
return err
}
func (log *Log) Close() error {
return log.fp.Close()
}
func (log *Log) Write(ent *Entry) error {
if _, err := log.fp.Write(ent.Encode()); err != nil {
return err
}
return log.fp.Sync() // fsync
}
func (log *Log) Read(ent *Entry) (eof bool, err error) {
err = ent.Decode(log.fp)
if err == io.EOF || err == io.ErrUnexpectedEOF || err == ErrBadSum {
return true, nil
} else if err != nil {
return false, err
} else {
return false, nil
}
}
// QzBQWVJJOUhU https://trialofcode.org/