Как прочитать файл, присутствующий в пакете, в другой файл, принадлежащий тому же пакету? - PullRequest
0 голосов
/ 02 июля 2019

Я пытаюсь прочитать файл (a.go), присутствующий в пакете, в другой файл (b.go), который также присутствует в том же пакете. Я использовал метод os.Open () , но он работает только тогда, когда я указываю полный системный путь к файлу (например, home / bin / xyz / a.go).

Но я хочу, чтобы файл (a.go) считывался в (b.go) без использования полного системного пути . Может кто-нибудь помочь, пожалуйста?

Папка

  -- a.go

  -- b.go

// Внутри b.go есть функция //

func (xyz){

x:= os.Open("--path to a.go--") // This path shouldn't be the system path

}

1 Ответ

0 голосов
/ 02 июля 2019

Используя этот метод, вы можете получить путь к текущему файлу.

_, srcpath, _, _ := runtime.Caller(0)
dirpath := filepath.Dir(srcpath)
err, fp := os.Open(filepath.Join(dirpath, "a.go"))
if err != nil {
     // err
}
...
fp.Close()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...