加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

go语言获取系统盘符的方法

发布时间:2020-12-16 19:32:17 所属栏目:大数据 来源:网络整理
导读:本篇章节讲解go语言获取系统盘符的方法。供大家参考研究。具体如下: 涉及golang调用winapi获取系统盘符的技巧。代码如下: 复制代码 代码如下: // cs project main.go package main import ( "fmt" . "strconv" "syscall" ) func GetLogicalDrives(

本篇章节讲解go语言获取系统盘符的方法。分享给大家供大家参考。具体如下:

涉及golang调用winapi获取系统盘符的技巧。代码如下:

复制代码 代码如下:
// cs project main.go
package main
import (
 "fmt"
 . "strconv"
 "syscall"
)
func GetLogicalDrives() []string {
 kernel32 := syscall.MustLoadDLL("kernel32.dll")
 GetLogicalDrives := kernel32.MustFindProc("GetLogicalDrives")
 n,_,_ := GetLogicalDrives.Call()
 s := FormatInt(int64(n),2)
 var drives_all = []string{"A:","B:","C:","D:","E:","F:","G:","H:","I:","J:","K:","L:","M:","N:","O:","P:","Q:","R:","S:","T:","U:","V:","W:","X:","Y:","Z:"}
 temp := drives_all[0:len(s)]
 var d []string
 for i,v := range s {

  if v == 49 {
   l := len(s) - i - 1
   d = append(d,temp[l])
  }
 }
 var drives []string
 for i,v := range d {
  drives = append(drives[i:],append([]string{v},drives[:i]...)...)
 }
 return drives
}
func main() {
 fmt.Println(GetLogicalDrives())
}

希望本文所述对大家的Go语言程序设计有所帮助。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读