1. 파일이나 폴더가 있는지 확인
golang 파일이나 폴더가 있는지 확인하려면 os.stat() 메서드와 os.IsExist() 메서드를 사용할 수 있습니다.
func isExist(path string)(bool){ _, err := os.Stat(path) if err != nil{ if os.IsExist(err){ return true } if os.IsNotExist(err){ return false } fmt.Println(err) return false } return true }
2 재귀 폴더를 생성하려면
os.MkdirAll() 메서드를 재귀적으로 사용하세요.
func MkdirAll(path string, perm FileMode) error
첫 번째 매개 변수는 경로이고 두 번째 매개 변수는 권한입니다. 폴더가 없으면 생성하고, 있으면 아무 작업도 수행하지 마십시오.
3. 테스트 코드
package main import ( "os" "fmt" ) //判断文件或文件夹是否存在 func isExist(path string)(bool){ _, err := os.Stat(path) if err != nil{ if os.IsExist(err){ return true } if os.IsNotExist(err){ return false } fmt.Println(err) return false } return true } func main(){ //递归创建文件夹 err := os.MkdirAll("./test/1/2", os.ModePerm) if err != nil{ fmt.Println(err) return } dirs := []string{"./test/1", "./test/2", "./test/1.txt"} for _, v := range dirs{ if isExist(v){ fmt.Printf("%s is exist!", v) }else{ fmt.Printf("%s is not exist!", v) } } }
터미널에서 실행:
ma@ma:/data/code/go/src/file_exist$ tree . └── file_exist.go 0 directories, 1 file ma@ma:/data/code/go/src/file_exist$ go run file_exist.go # 运行程序 ./test/1 is exist! ./test/2 is not exist! ./test/1.txt is not exist! ma@ma:/data/code/go/src/file_exist$ tree . ├── file_exist.go └── test └── 1 └── 2 3 directories, 1 file ma@ma:/data/code/go/src/file_exist$ touch test/1.txt # 创建1.txt ma@ma:/data/code/go/src/file_exist$ go run file_exist.go ./test/1 is exist! ./test/2 is not exist! ./test/1.txt is exist! # 1.txt存在
더 많은 golang 지식을 알고 싶다면 golang tutorial 칼럼을 주목해주세요.
위 내용은 Golang은 파일이 존재하는지 여부를 확인하고 파일을 생성합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

go语言有缩进。在go语言中,缩进直接使用gofmt工具格式化即可(gofmt使用tab进行缩进);gofmt工具会以标准样式的缩进和垂直对齐方式对源代码进行格式化,甚至必要情况下注释也会重新格式化。

go语言叫go的原因:想表达这门语言的运行速度、开发速度、学习速度(develop)都像gopher一样快。gopher是一种生活在加拿大的小动物,go的吉祥物就是这个小动物,它的中文名叫做囊地鼠,它们最大的特点就是挖洞速度特别快,当然可能不止是挖洞啦。

本篇文章带大家了解一下golang 的几种常用的基本数据类型,如整型,浮点型,字符,字符串,布尔型等,并介绍了一些常用的类型转换操作。

是,TiDB采用go语言编写。TiDB是一个分布式NewSQL数据库;它支持水平弹性扩展、ACID事务、标准SQL、MySQL语法和MySQL协议,具有数据强一致的高可用特性。TiDB架构中的PD储存了集群的元信息,如key在哪个TiKV节点;PD还负责集群的负载均衡以及数据分片等。PD通过内嵌etcd来支持数据分布和容错;PD采用go语言编写。

go语言需要编译。Go语言是编译型的静态语言,是一门需要编译才能运行的编程语言,也就说Go语言程序在运行之前需要通过编译器生成二进制机器码(二进制的可执行文件),随后二进制文件才能在目标机器上运行。

在写 Go 的过程中经常对比这两种语言的特性,踩了不少坑,也发现了不少有意思的地方,下面本篇就来聊聊 Go 自带的 HttpClient 的超时机制,希望对大家有所帮助。

删除map元素的两种方法:1、使用delete()函数从map中删除指定键值对,语法“delete(map, 键名)”;2、重新创建一个新的map对象,可以清空map中的所有元素,语法“var mapname map[keytype]valuetype”。


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

드림위버 CS6
시각적 웹 개발 도구

WebStorm Mac 버전
유용한 JavaScript 개발 도구
