System.Environment.CurrentDirectory
//例: c:/test/
Application.ExecutablePath(包括名称)
//例: c:/test/myapp.exe
Application.StartupPath(不包括名称)
//例: c:/test/
绝对路径是直接到达目标位置,通常是从盘符开始的路径。完整的描述文件位置的路径就是绝对路径,以web站点根目录为参考基础的目录路径。
绝对路径名的指定是从树型目录结构顶部的根目录开始到某个目录或文件的路径,由一系列连续的目录组成,中间用斜线分隔,直到要指定的目录或文件,路径中的最后一个名称即为要指向的目录或文件。之所以称为绝对,意指当所有网页引用同一个文件时,所使用的路径都是一样的。
扩展资料
几种编程语言获取程序所在路径的方法:
1、在golang程序里面获取程序所在路径:
package main
import (
"path/filepath"
"os"
"fmt"
"log"
)
func main() {
execDir, err := filepath.Abs(filepath.Dir(os.Args[0]))
if err = nil {
log.Fatal(err)
}fmt.Println(execDir)
}
2、python脚本所在路径:
import os
print(os.path.split(os.path.realpath(__file__))[0])
3、shell脚本获取脚本的绝对路径:
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &&pwd )"
使用go命令可以定位到文件头和文件末当go run 运行时会将文件转移到临时路径下,然后再进行编译和执行,分片0就是C:\Users\xxx\AppData\Local\Temp___go_build_main_go.exe;
go build编译执行时,那么分片0为执行文件的相对路径为(main.go)
fmt.Println(os.Args)
//output:[C:\Users\xxx\AppData\Local\Temp\___go_build_main_go.exe]
1
2
1
2
exec.LookPath()
根据传入的参数来从PATH中获取可执行文件的绝对路径(没有编译的)或者相对路径(编译后的);参数若带分割号就直接查询返回
func LookPath(file string) (string, error)
LookPath searches for an executable named file in the directories named by the
PATH environment variable. If file contains a slash, it is tried directly and the
PATH is not consulted. LookPath also uses PATHEXT environment variable to match a
suitable candidate. The result may be an absolute path or a path relative to the
current directory.
1
2
3
4
5
6
7
1
2
3
4
5
6
7
filepath.Abs()
根据传入的路径计算出绝对路径,如果传入的为相对路径,那么它会把当前路径拼接上
编译后返回的是真实的路径(D:\go_project\src\github.com\wzbwzt\studyGo\GetPath\main.exe)
未编译执行返回的是临时执行路径
(C:\Users\xxx\AppData\Local\Temp___go_build_main_go.exe)
Go语言模板文件可以引入js文件或css文件,但是在引入的过程中,需要注意以下几点:1. 引入的文件路径应该是相对路径,而不是绝对路径。
2. 在引入js文件时,需要使用{{ url }} 模板函数,用来拼接路径, 这样可以更好的兼容不同的路径。
3. 如果是在统一的文件夹中的js文件,最好使用{{ static }}模板函数,这样可以更好的节省路径长度。
4. 在引用js文件时,需要在页面底部,可以使用{{ template }}模板函数,这样可以保证js文件在页面加载完成之前就被加载。
总之,使用Go语言模板文件引入js文件,需要注意路径的相对性,并且使用模板函数来拼接路径,这样可以更好的兼容不同的路径,从而保证引用js文件的正确性。