Go语言中文网 为您找到相关结果 31

golang中os/exec包用法

exec包执行外部命令,它将os.StartProcess进行包装使得它更容易映射到stdin和stdout,并且利用pipe连接i/o. func LookPath(file string) (string, error) //LookPath在环境变量中查找科执行二进制文件,如果file中包含一个斜杠,则直接根据绝对路径或者相对本目录的相对路径去查找 func main() { f, err := exec.LookPath("ls") if err != nil { fmt.Println(err) } fmt.Println(f) // /bin/ls } type Cmd //表示一个正在准备或者正在运行的外部命令 type Cmd struct { Path string //运...阅读全文

博文 2015-06-17 20:02:21 chenbaoke

golang中archive/zip包用法

archive/zip包提供了zip归档文件的读写操作。 在对zip包进行介绍之前,先说明一下zip和tar的区别。 二者都是对文件进行归档,不进行压缩。并且二者使用平台不同,对于 Windows 平台而言,最常用的格式是 zip 和 rar,国内大多数是用 rar,国外大多数是用 zip。而对于类 Unix 平台而言,常用的格式是 tar 和 tar.gz,zip 比较少一些,rar 则几乎没有。 zip 格式是开放且免费的,所以广泛使用在 Windows、Linux、MacOS 平台,要说 zip 有什么缺点的话,就是它的压缩率并不是很高,不如 rar及 tar.gz 等格式。 严格的说,tar 只是一种打包格式,并不对文件进行压缩,主要是为了便于文件的管理,所以打包后的文档大小一般远远...阅读全文

博文 2015-11-12 23:00:03 chenbaoke

Go 语言编译运行的小问题

载:http://c2pblog.sinaapp.com/archives/355 简单谈一谈Go语言的编译运行。 golang 和C/C++都是编译型的语言,首先要写好源文件,然后编译,最后运行。这几天在用IDE的时候一直都是一键运行的,没有怎么好好理解编译和运行之间的区别。而在Linux下面则出现了一些小问题不得不重新思考这个区别。虽然说golang编译速度很快,但是我们实际使用的时候必须是要用可执行文件的,你给我一个源代码是没有意义的,而在实际项目中,你的代码会跑在很多机子上面,每一分钟都会运行很多很多次,然后这种情况下如果你在编译的时候都会浪费掉时间的话,那么这个成本将会很大。于是我们必须做一些对应的处理,将golang源文件先编译成可执行文件,然后直接在使用的时候去执行就好。 这时...阅读全文

博文 2015-03-13 10:00:02 yugongpeng_blog

OC中怎么注释自己创建的方法?

在程序开发中,我们经常需要对代码进行注释,那对于iOS初学者而言,使用objective-c语言进行应用开发的时候,如何对方法进行注释呢?今天小编为大家分享的就是这部分知识,不清楚的亲,一起来看看吧。 在iOS应用开发中,对自己创建的方法进行注释,这与编写java代码时的注释javadoc类似,可以自动形成规范性的方法说明。 我们对方法进行注释时,最需要说明的就是方法的作用、方法的参数以及方法返回的结果,所以这里也只说这三个标签,其实很简单,如下所示: /** * @brief 通过两个参数请求一个结果. * * @param valueOne 第一个参数. * @param valueTwo 第二个参数. * * @return 返回结果. *...阅读全文

go语言的os.exec包介绍

载自:http://www.unjeep.com/q/586059486.htm exec包执行外部命令,它将os.StartProcess进行包装使得它更容易映射到stdin和stdout,并且利用pipe连接i/o. func LookPath(file string) (string, error) //LookPath在环境变量中查找科执行二进制文件,如果file中包含一个斜杠,则直接根据绝对路径或者相对本目录的相对路径去查找 func main() { f, err := exec.LookPath("ls") if err != nil { fmt.Println(err) } fmt.Println(f) // /bin/ls } type Cmd //表示一个正在准备或者正在...阅读全文

博文 2016-04-21 19:00:02 kuoshuang

如何写 go 中间件

编写 go 中间件看起来挺简单的,但是有些情况下我们可能会遇到一些麻烦。 让我们来看一些例子。 ## 读取请求 我们例子中的所有中间件都会接收一个 `http.Handler` 作为参数,并返回一个 `http.Handler` 。 这样便于将中间件链接起来。我们所有的中间件将会遵循如下基本模式: ```go func X(h http.Handler) http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { // Something here... // 这里还有一些其他信息 h.ServeHTTP(w, r) }) } ``` 假设我们想要将所有请求重定向到一个末尾斜杠(例...阅读全文

博文 2018-05-10 21:36:47 SergeyChang

Go语言核心技术(卷一)之2.5-字符串

字符串是不可变的字节序列,虽然可以包含任意数据,包括0这个字节,不过字符串通常是用来包含可读性较强的文本。文本字符串通常采用UTF-8编码,由Unicode码点(rune)组成。 内置的len函数会返回字符串的所有字节(byte)数(注意不是rune的数目!!一个rune可能包含多个字节),下标操作s[i]可以获取字符串的第i 个字节(从0开始), 其中i >= 0 并且 i < len(s):s := "hello, world" fmt.Println(len(s)) // "12" fmt.Println(s[0], s[7]) // "104 119" ('h' and 'w') 访问索引边界外的字节会造成运行时panic:c := s[len(s)] // panic: index...阅读全文

博文 2016-03-17 20:00:02 abv123456789

正则表达式

匹配纯文本 Ben Hello, my name is Ben. Please visit my website at http://www.forta.com. 匹配任意字符(默认模式不匹配\n,单行模式可以匹配\n) a.c abc acc a2c.a.\.xls na1.xls na2.xls前面两个点任意字符 ,最后一个转义点, . 和 \ 等都叫做元字符(metacharacter),表示这个字符有特殊含义,而不是字符本身的含义,如果我们要匹配元字符的话,我们需要对元字符进行转义 [] 字符集,对应位置可以是字符集中的任意字符,字符集中的字符可以逐个列出,也可以给出范围,如[abc]或[a-c] ,第一个字符如果是^则表示取反,如[^abc];所有特殊字符在字符集中都失去原有的特殊...阅读全文

博文 2018-12-01 00:34:42 越塔打哭你

除了写代码,还有诗和远方

**除了写代码,还有诗和远方** --- ![1.jpg-80.9kB][1] **“生活不止眼前的苟且** **还有诗和远方的田野** **你赤手空拳来到人世间** **为找到那片海不顾一切”** 许巍联袂高晓松的这首“生活不止眼前的苟且”最近已经红遍各大朋友圈。这首歌虽然不是许巍歌曲中最具有代表性的一曲,只因为这四句直戳人心也已足够。 苟且生活的人,最后也将被生活抛弃。 --- 程序员,在我心中一直不是一个苟且的工作。 朝九晚五的工作,对于程序员基本是不现实的。 我们,早上上班看得见朝阳升起,晚上下班看不见北京堵车。 虽然各家咨询机构都提到过程序员的薪资在随着入行时间的增长,而不断提升。但是面对北上广深飞速攀升的房价...阅读全文

golang1.1 path包bug

func Dir(path string) string Dir returns all but the last element of path, typically the path's directory. After dropping the final element using Split, the path is Cleaned and trailing slashes are removed. If the path is empty, Dir returns ".". If the path consists entirely of slashes followed by non-slash bytes, Dir returns a single slash. In any...阅读全文

博文 2014-10-04 19:26:10 rufidmx

Golang 1.10 前瞻

Golang 1.10 beta 今天正式 release 了,Golang 1.10 正式发布将在 2018 年 2 月份,我们不妨先来看一下 1.10 的特性。大家可以从这个链接 go1.10 beta ( http://link.zhihu.com/?target=https%3A//golang.org/dl/%23go1.10beta1 ) 进行下载安装。验证输出如下就是安装成功了。 ➜ ~ go version go version go1.10beta1 darwin/amd64 如果你现在机器上已经安装了其他版本,可以通过下面方式来体验。 $ go get golang.org/x/build/version/go1.10beta1 $ go1.10beta1 downloa...阅读全文

博文 2017-12-10 02:11:02 尼不要逗了

Go 字符串编码,Unicode 和UTF-8

1.字符串字符串在Go语言中以原生数据类型出现,使用字符串就像使用其他原生数据类型(int、bool、 float32、foat64等)一样。 字符串的值为双引号中的内容,可以在Go语言的源码中直接添加非ASCⅡ码字符 Go语言的字符串常见转义符包含回车、换行、单双引号、制表符等,如下所示 转移符 含义 \r 回车符(返回行首) \n 换行符(直接跳到下一行的同列位置) \t 制表符 \' 单引号 \" 双引号 \\ 反斜杠 2.字符串实现基于UTF-8编码 go 语言里的字符串的内部实现使用UTF8编码. 通过rune类型,可以方便地对每个UTF-8字符进行访问。 当然,Go语言也支持按传统的ASCII码方式进行逐字符访问。 3.字符 字符串中的每一个元素叫做“字符”,在遍历或者单个获取字...阅读全文

博文 2019-06-01 23:04:38 nicce

golang 文件服务器

在go语言中可以用一句代码做一个文件服务器。如果有很多文件需要通过网页来供其他人下载,可以使用这个方法。 package main import ( "log" "net/http" ) func main() { // 注意斜杠! http.Handle("/public/", http.StripPrefix("/public/", http.FileServer(http.Dir("public")))) // 正确 //http.Handle("/", http.FileServer(http.Dir("public"))) // 正确(访问根目录时转到public目录) //http.Handle("/public", http.StripPrefix("/public", htt...阅读全文

博文 2016-11-03 11:00:02 ibgo

(go) 上传文件elipse专用

package main import ( "bufio" "io" "log" "os" "os/exec" "strings" "time" ) const ( filename = "c:\\myetc\\remote.etc" dotfilename = "c:\\myetc\\.filename" ) func main() { var servicefilepath string var serviceIP string var passwd string var serviceusername string var port string var spath string var sfilename string var splitstrings []string //打开之前...阅读全文

博文 2016-03-09 02:00:00 zistxym

golang os/exec 执行外部命令

exec包执行外部命令,它将os.StartProcess进行包装使得它更容易映射到stdin和stdout,并且利用pipe连接i/o. func LookPath(file string) (string, error) //LookPath在环境变量中查找科执行二进制文件,如果file中包含一个斜杠,则直接根据绝对路径或者相对本目录的相对路径去查找 1. func main() { 2. f, err := exec.LookPath("ls") 3. if err != nil { 4. fmt.Println(err) 5. } 6. fmt.Println(f) // /bin/ls 7. } type Cmd //表示一个正在准备或者正在运行的外部命令 1. type Cmd ...阅读全文

博文 2019-04-27 08:34:42 佛心看世界

《Golang 入门系列四》golang的基本数据类型

前言:在 Go 编程语言中,数据类型用于声明函数和变量。数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存。 一、数字类型 有符号整数采用2的补码形式表示,也就是最高bit位用来表示符号位,一个n-bit的有符号数的值域是从-2^{n-1}−2​n−1​​到2^{n-1}-12​n−1​​−1。无符号整数的所有bit位都用于表示非负数,值域是0到2^n-12​n​​−1。例如,int8类型整数的值域是从-128到127,而uint8类型整数的值域是从0到255。 1.1 整型 序号 类型和描述 1 uint8: 无符号 8 位整型 (0 到 255) 2 uint16: 无符号 16 位整型 (0 到 65535) 3 ui...阅读全文

PhalGo-Echo路由

PhalGo-Echo路由 Echo官网地址:https://labstack.com/echo Echo是PhalGo最核心的组件,负责了整体的请求路由返回等功能,并且Echo支持HTTP2协议以及HTTPS协议 为什么选择Echo 在初期笔者考虑过Echo,gin以及beego来尝试实现自己的项目,最终还是选择了使用Echo来作为PhalGo的主要路由框架 让我决定的因素是应为Echo支持使用fasthttp所以在效率上面基本其他框架没法比(笔者是个性能狗),我们可以看一下Echo官方的性能图 机器配置: Go 1.6 wrk 4.0.0 2 GB, 2 Core gin相对来说更人性化一些beego相对更简单易用一些感兴趣的可以尝试一下 注册路由 在PhalGo中所有的组件需要使用都需...阅读全文

博文 2017-02-10 13:53:01 喵了个咪_

Go语言核心之美 2.5-字符串

字符串是不可变的字节序列,虽然可以包含任意数据,包括0这个字节,不过字符串通常是用来包含可读性较强的文本。文本字符串通常采用UTF-8编码,由Unicode码点(rune)组成。 内置的len函数会返回字符串的所有字节(byte)数(注意不是rune的数目!!一个rune可能包含多个字节),下标操作s[i]可以获取字符串的第i 个字节(从0开始), 其中i >= 0 并且 i < len(s):s := "hello, world" fmt.Println(len(s)) // "12" fmt.Println(s[0], s[7]) // "104 119" ('h' and 'w') 访问索引边界外的字节会造成运行时panic:c := s[len(s)] // panic: index...阅读全文

博文 2017-10-27 20:58:43 erlib

Go语言 Web开发(3)HTTP基础流程分析(下)

在Go语言的http包中有两个核心的功能:Conn,ServeMux。 Conn的goroutine 之前我们说过用户的每一次请求Conn都是在一个新的goroutine去处理,相互不影响,不会被阻塞,这就是Go的高并发的体现。在 func (srv *Server) Serve(l net.Listener) error 函数中有这样的描述 Serve accepts incoming connections on the Listener l, creating a new service goroutine for each. 具体代码如下: c := srv.newConn(rw) c.setState(c.rwc, StateNew) // before Serve can ret...阅读全文

博文 2018-08-23 05:34:43 小杰的快乐时光

golang url 链接地址解析包

golang url 链接地址解析包 url 编码 QueryEscape 将字符地址转为安全地址 func QueryEscape(s string) string p := url.QueryEscape("/user?id=12") // >>> %2Fuser%3Fid%3D12 QueryUnescape 还原QueryEscape 转码 func QueryUnescape(s string) (string, error) URL 类型 URL 结构 type URL struct { Scheme string Opaque string // 编码后的不透明数据 User *Userinfo // 用户名和密码信息 Host string // host或host:port...阅读全文

博文 2019-06-07 05:32:39 直立猿

赞比学堂白皮书V1.0

赞比学堂,让知识就是力量(Knowledge is power.),在你身上得以验证!1、摘要: 互联网时代,人们已经不满足于仅仅只有工资收入,更多的人尤其喜欢利用空闲时间来通过线上课程学习来发展副业,做斜杠青年。区块链时代,使每个人付出的时间精力和注意力,能更容易的得到应有的回报。知识付费时代,人人都愿意为打造更好的自己,或者说是为更有竞争力的自己付费,投资。逆水行舟,不进则退。保护你的注意力;解决,知识学了那么多,还是变不成我自己的力量;挖掘你自我成长的潜能。2、 行业背景及痛点:2.1作为学习者,学习平台琳琅满目,课程目不暇接,选择恐惧;另外,学了,但是变不成自己的知识,自己的知识无法发挥效力。2.2作为课程发布者,平台分润太高,自己的付出被克扣,心有不甘;学生学完后,是否用的上,应用...阅读全文

博文 2018-10-08 01:34:42 贾传宝

什么是URI,URL,URN?以及golang实现

URI:Uniform Resource Identifier,统一资源标识符; URL:Uniform Resource Locator,统一资源定位符; URN:Uniform Resource Name,统一资源名称。 其中,URL,URN是URI的子集。URI:Uniform Resource Identifier,统一资源标识符; URL:Uniform Resource Locator,统一资源定位符; URN:Uniform Resource Name,统一资源名称。 其中,URL,URN是URI的子集。URI:Uniform Resource Identifier,统一资源标识符; URL:Uniform Resource Locator,统一资源定位符; URN:Unifo...阅读全文

博文 2018-07-02 21:35:44 暮色伊人

Go语言核心之美 2.5-字符串

版权声明:本文为Sunface(孙飞)原创文章,转载请注明出处 https://blog.csdn.net/abv123456789/article/details/50907392 字符串是不可变的字节序列,虽然可以包含任意数据,包括0这个字节,不过字符串通常是用来包含可读性较强的文本。文本字符串通常采用UTF-8编码,由Unicode码点(rune)组成。 内置的len函数会返回字符串的所有字节(byte)数(注意不是rune的数目!!一个rune可能包含多个字节),下标操作s[i]可以获取字符串的第i 个字节(从0开始), 其中i >= 0 并且 i < len(s):s := "hello, world" fmt.Println(len(s)) // "12" fmt.Println...阅读全文

博文 2019-03-17 13:12:31 erlib

golang编程进阶技巧

对最近使用到的技巧做一个汇总。使用反斜杠处理较长的字符串,省去手动转义,简洁又节省时间。 反斜杠的使用 类型转换。 类型转换一步到位 GC优化。 gc优化 go数组是值类型,如果想避免数据复制,可以改用指针或切片。给函数添加方法,调用自己。 函数属性 匿名接口的使用。 匿名接...阅读全文

博文 2019-08-28 01:32:45 飞刀无痕

go语言1

go的基本命令: go run 快速执行go文件 go build 编译程序 go install 安装可执行文件到bin go test 执行单元测试 go env 显示go环境变量 go fmt 格式化源代码 go 语言: package main //双斜杠为注释,package要放在第一行 import ( //导入fmt包 "fmt" ) func main() { // 在同一个目录下,只允许有一个main包 main函数 fmt.Print("hello world") \\ 打印输出 fmt.Printf("hello world, %d\n",100) \\带有占位符的答应 fmt.Println("hello world") var a int \\定义变量a为int类型...阅读全文

博文 2019-04-01 10:31:03 qq_36811322

怎么设置paybob的微信jsapi支付目录

设置方法非常简单,首先你得是 [paybob](https://www.paybob.cn) 的有效开通用户,在后台菜单-系统设置-JSAPI目录设置,在右侧填写支付目录即可。 三种设置实例: - 1.比如支付页面url是: http://www.xxx.com/paybob/pay.php - 1.支付目录则填写: http://www.xxx.com/paybob/ - 2.比如支付页面url是: http://www.xxx.com/paybob/order/id/100.html - 2.支付目录则填写: http://www.xxx.com/paybob/order/id/ - 3.比如支付页面url是: http://www.xxx.com/paybob/order?id=100...阅读全文

博文 2019-08-07 18:26:38 paybob

windows server上 gorm 连接DB提示 the system cannot find the path specified

友情提示:window server上很容易就踩坑 1. 背景 语言:golang ORM: gorm 运行环境: Windows server 1. 起因 因为外在因素,不得不在Windows server上跑程序,然后就直接在在初始化DB连接时失败了,返回的error是the system cannot find the path specified。这里其实是有点奇怪的,这提示似乎指的是本地文件路径问题,但DB配置是已经读取成功的,连接也是连接远端DB,并没有读取本地文件操作? 2. 查 顺着链路往下查,在gorm.open报错,查到是parseDsn失败,但同样的程序和dsn在本地电脑运行并没有问题。 继续往下,看到parseDsn里的parseDSNParams里其中有个地方调用t...阅读全文

博文 2019-08-18 05:32:49 HollowKnight

每一个工程师都要学的安全测试,老板再也不用担心服务器被黑

> 本文由云+社区发表 本篇包含了XSS漏洞攻击及防御详细介绍,包括漏洞基础、XSS基础、编码基础、XSS Payload、XSS攻击防御。 ------ ## 第一部分:漏洞攻防基础知识 XSS属于漏洞攻防,我们要研究它就要了解这个领域的一些行话,这样才好沟通交流。同时我建立了一个简易的攻击模型用于XSS漏洞学习。 **1. 漏洞术语** 了解一些简单术语就好。 **VUL** Vulnerability漏洞,指能对系统造成损坏或能借之攻击系统的Bug。 **POC** Proof of Concept,漏洞证明;可以是可以证明漏洞存在的文字描述和截图,但更多的一般是证明漏洞存在的代码;一般不会破坏存在漏洞的系统。 **EX...阅读全文