用golang如何替换某个文件中的字符串

用golang实现了某个文件中字符的替换,替换为按行替换,执行后会生成新文件,如a.txt,执行后生成a.txt.mdf。新文件即修改后的内容。主要用来练习文件的读取与写入package main imp...

golang如何去除多余空白字符(含制表符)

看代码吧~//利用正则表达式压缩字符串,去除空格或制表符func compressStr(str string) string { if str == "" { return "" } //匹配一个或多个空白符的正则...

win10下go mod配置方式

这是因为获取golang.org/x/...时需要翻墙,而我这里没有翻墙,不过没关系设置下代理即可:// bash mac export GOPROXY=https://goproxy.io// powershell windows $env:GOPROXY =...

go原生库的中bytes.Buffer用法

1 bytes.Buffer定义bytes.Buffer提供可扩容的字节缓冲区,实质是对切片的封装;结构中包含一个64字节的小切片,避免小内存分配:// A Buffer is a variable-sized buffer of bytes...

Go缓冲channel和非缓冲channel的区别说明

在看本篇文章前我们需要了解阻塞的概念在执行过程中暂停,以等待某个条件的触发 ,我们就称之为阻塞在Go中我们make一个channel有两种方式,分别是有缓冲的和没缓冲的缓冲channel...

Go语言使用select{}阻塞main函数介绍

很多时候我们需要让main函数不退出,让它在后台一直执行,例如:func main() { for i := 0; i < 20; i++ { //启动20个协程处理消息队列中的消息 c := consumer.New()...

golang判断key是否在map中的代码

个人常用函数func IsContain(items []string, item string) bool { for _, eachItem := range items { if eachItem == item { return true } } return false}使用方法v...

golang interface判断为空nil的实现代码

要判断interface 空的问题,首先看下其底层实现。interface 底层结构根据 interface 是否包含有 method,底层实现上用两种 struct 来表示:iface 和 eface。eface表示不含 method...

基于go interface{}==nil 的几种坑及原理分析

本文是Go比较有名的一个坑,在以前面试的时候也被问过,为什么想起来写这个?因为我们线上就真实出现过这个坑,写给不了解的人在使用 if err != nil 的时候提高警惕。Go语言的inte...

go:垃圾回收GC触发条件详解

版本: go version go1.13 darwin/amd64在go源码runtime目录中找到gcTrigger结构体,就能看出大致调用的位置 GC调用方式 所在位置...

关于一个mongodb和golang搭伙采坑

mongodb 和 golang 搭伙采坑背景起初是打算用 golang + mongodb 来做。网上也查了写资料,说 mongodb 的 model 和 golang 的 struct 是很般配的。然后作为前端出生的我,本来使...

Go语言操作数据库及其常规操作的示例代码

Go操作MySQL
安装: go get -u github.com/go-sql-driver/mysqlGO语言的操作数据库的驱动原生支持连接池, 并且是并发安全的 标准库没有具体的实现 只是列出了一些需要的第三...

关于golang中方法的receiver为指针和不为指针的区别

golang中方法的receiver为指针和不为指针的区别前言最近看网站有同学提问golang中方法的receiver为指针和不为指针有什么区别,在这里我以简单易懂的方法进行说明,帮助刚刚学...

详解用Go语言实现工厂模式(Golang经典编程案例)

golang中的struct没有构造函数,一般可以使用工厂模式来解决这个问题。这个模式本身很简单而且使用在业务较简单的情况下。一般用于小项目或者具体产品很少扩展的情况(这样工厂...

Go语言利用ssh连接服务器的方法步骤

学习了Go语言后,打算利用最近比较空一点,写一个前端部署工具,不需要每次都复制粘贴的麻烦,需要完成部署的第一步就需要连接远程服务器打开 ssh server首先我们想要利用ssh连...

关于golang gopath的新用法

golang gopath的新用法从使用golang开发项目以来,golang的项目代码依赖问题就一直困扰着我,主要是对gopath的用法不明了导致了项目结构很混乱,最近突然想到一个很好的gopath用...

为什么不建议在go项目中使用init()

前言go的 init函数给人的感觉怪怪的,我想不明白聪明的 google团队为何要设计出这么一个“鸡肋“的机制。实际编码中,我主张尽量不要使用init函数。首先来看看 init函数的作用...

Golang二维切片初始化的实现

引言
之前,刷Leetcode的时候,有些题需要初始化二维数组,而一维数组的初始化,比如:
var a = [5]int{1, 2, 3, 4, 5} // 用varb := [5]int{1, 2, 3, 4, 5} // 用类型推断var c = [....

go语言map与string的相互转换的实现

一.map转string
import ( "encoding/json") func MapToJson(param map[string]interface{}) string{ dataType , _ := json.Marshal(param) dataString := string(dataType)...

jenkins构建go及java项目的方法

写在前面jenkins作为java的好基友,经历过单体项目时代->集群项目时代->容器集群分布式时代,使用稳定可靠,cpu友好(就泪存有点儿难看),如果有问题就。。。(当然这种情况不多(_)...

一文读懂go中semaphore(信号量)源码

运行时信号量机制 semaphore前言最近在看源码,发现好多地方用到了这个semaphore。本文是在go version go1.13.15 darwin/amd64上进行的作用是什么下面是官方的描述// Semapho...

golang中判断两个slice是否相等

在golang中我们可以轻松地通过==来判断两个数组(array)是否相等,但遗憾的是slice并没有相关的运算符,当需要判断两个slice是否相等时我们只能另寻捷径了。slice相等的定义我们选...

Go各时间字符串使用解析

Go 中时间格式化的模板
const ( ANSIC = "Mon Jan _2 15:04:05 2006" UnixDate = "Mon Jan _2 15:04:05 MST 2006" RubyDate = "Mon Jan 02 15:04:05 -0700 2006"...

Go Gin实现文件上传下载的示例代码

Go Gin 实现文件的上传下载流读取
文件上传
routerrouter.POST("/resources/common/upload", service.UploadResource)servicetype: POSTdata:{ “saveDir”:“保存的路...

golang的时区和神奇的time.Parse的使用方法

时区
先写一段测试代码:const TIME_LAYOUT = "2006-01-02 15:04:05"func parseWithLocation(name string, timeStr string) (time.Time, error) { locationName := name if l...

返回顶部
顶部