func (storage *FileSystem) Open(name string) (File, error) {
	name = filepath.Join(storage.dir, name)
	if err := storage.mkdir(name); err != nil {
		return nil, err
	}
	return os.Open(name)
}
Open opens the named file for reading
package storage
import (
	"io/fs"
	"os"
	"path/filepath"
)
type (
	File     = fs.File
	FileMode = fs.FileMode
)
type FileSystem struct {
	dir string
}
func New(dir string) *FileSystem {
	return &FileSystem{dir: dir}
}