expandindo o diretório doméstico em go
em go, expandindo o caractere tilde (~) para o diretório doméstico do usuário é crucial para manuseio Caminhos relativos nos programas. No entanto, o pacote de caminho interno não suporta esse recurso. A função atual () nos permite obter os detalhes do usuário atual, incluindo o diretório inicial.
import ( "OS/Usuário" "Path/filepath" ) // Função utilitária para expandir o personagem Tilde para o diretório inicial do usuário Func ExpandTilde (String de caminho) String { CurrentUser, _: = user.current () Homedir: = CurrentUser.homedir se caminho == "~" { Retornar Homedir } else if strings.hasprefix (caminho, "~/") { retornar filepath.join (Homedir, caminho [2:]) } caminho de retorno }
import ( "os/user" "path/filepath" ) // Utility function to expand the tilde character to the user's home directory func expandTilde(path string) string { currentUser, _ := user.Current() homeDir := currentUser.HomeDir if path == "~" { return homeDir } else if strings.HasPrefix(path, "~/") { return filepath.Join(homeDir, path[2:]) } return path }
incorporando Essa funcionalidade em seu código existente, agora você pode expandir o personagem Tilde no seu caminho de destino:
importar "Path" // var destino *string é a entrada do usuário func expandpath () { if Path.isabs (*Destination) { retornar } cwd, err: = os.getwd () CheckError (ERR) *destino = Path.Join (CWD, *Destino) }
import "path" // var destination *String is the user input func expandPath() { if path.IsAbs(*destination) { return } cwd, err := os.Getwd() checkError(err) *destination = path.Join(cwd, *destination) }
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3