golang
文章平均质量分 82
rufidmx
这个作者很懒,什么都没留下…
展开
-
golang遍历某个目录下的文件,并读取文件名到一个csv文件
package mainimport ("encoding/csv""fmt""os""path/filepath""container/list")var outputFileName string = "filesName.csv"func CheckErr(err error) {if nil != err {panic(err)}}func GetFull原创 2013-03-07 08:47:51 · 13041 阅读 · 2 评论 -
golang1.1 path包bug
func Dir(path string) stringDir 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原创 2013-08-21 11:41:05 · 2123 阅读 · 0 评论 -
golang package init可以多处定义
1、在golang中import 包A的时候,会自动隐式的调用该包A的init()函数(i字母小写)。2、调用顺序:如果该包A又import了别的包B,会优先调用包B的init()函数,最后才调用main包的init()函数。3、一个包的init()函数可以定义多个,在被引用的时候,会被一次调用。原创 2013-05-15 18:02:55 · 10240 阅读 · 3 评论 -
merge sort in golang
package mainimport ( "fmt")var tmp [len(src)]intvar src = [7]int{2, 4, 9, 7, 6, 1, 9}//对排序好的分数组进行合并func Merge(left, m, right int) { i := left j := left //标示把排序好的数放到临时数组的那个index w := m + 1原创 2013-08-23 15:20:13 · 1687 阅读 · 0 评论 -
quick sort in golang
package mainimport ( "fmt")func QuickSort(src []int, first, last int) { flag := first left := first right := last if first >= last { return } for first < last { //从最右边开始向前找比选取的标记值小的数原创 2013-08-23 15:26:30 · 1500 阅读 · 1 评论 -
go gdb调试 参数设置
编译时,如果编译的结果需要gdb调试则使用参数-gcflags “-N -l”,这样可以忽略Go内部做的一些优化,聚合变量和函数等优化. go build -gcflags "-N -l",但是一定要注意是小写的i,不然会出现奇怪的错误。如果编译的结果需要发布.则使用-ldflags “-s”,可以去掉调试信息,减小大约一半的大小go build -ld原创 2013-05-30 14:16:55 · 6915 阅读 · 0 评论 -
利用golang的反射包,实现根据函数名自动调用函数。
package mainimport "fmt"import "reflect"import "encoding/xml"type st struct{}func (this *st)Echo(){ fmt.Println("echo()")}func (this *st)Echo2(){ fmt.Println("echo-----------------原创 2014-01-13 17:33:52 · 10332 阅读 · 0 评论 -
Golang 接收器是指针还是至类型的区别
Go语言可以根据下面的函数:func(a Integer) Less(b Integer) bool 自动生成一个新的Less()方法:func(a *Integer) Less(b Integer) bool{ return(*a).Less(b) } 这样,类型*Integer就既存在Less()方法,也存在Add()方法,满足LessAdder接口。而原创 2014-01-14 17:14:52 · 2892 阅读 · 0 评论 -
golang 接口之间赋值并不要求完全相等,
接口赋值并不要求两个接口必须等价。如果接口A的方法列表是接口B的方法列表的子集,那么接口B可以赋值给接口A。原创 2014-01-14 17:17:21 · 1937 阅读 · 0 评论 -
热备份mongodb
mongodump -u root -p 989898 --host 10.32.100.5 --port 40000 --collection users --db pickup100 --authenticationDatabase admin -o .原创 2014-05-07 20:44:32 · 2175 阅读 · 0 评论 -
oh-my-zsh powerline
1. sudo apt-get intall zsh2. https://github.com/robbyrussell/oh-my-zsh Install oh-my-zsh23原创 2014-04-24 18:22:33 · 4225 阅读 · 0 评论 -
golang test cannot find import
1. 可以import别的项目的main package.2. 但是引用别的项目main package的时候,需要首先删除~/bin/main_package_name(你所引用的报名),不然回报错"cannot find import ".此问题好像是golang自身test工具的bug.3.go test一个包A的话,系统只会init此包,和被此包调用过的包.不会初始化别的包.如果在原创 2014-07-22 21:38:54 · 3230 阅读 · 0 评论 -
golang http content_type
1.如果没有指定content_type的话,http包会查看原创 2014-05-29 12:12:50 · 5196 阅读 · 0 评论 -
golang继承,和多态
package maintype ST struct{}func (s *ST)Show(){ println("ST")}func (s *ST)Show2(){ println("ST:Show2()")}type ST2 struct{ ST I int}func (s *ST2)Show(){原创 2013-05-13 15:05:36 · 13122 阅读 · 0 评论 -
golang template传递值的第二种方法 利用map[string]interface{}
关于golang tmplate怎么样传递值,以前的调查结果是只能用struct,但是最近开一个开源source,发现他竟然用的是map[string]interface{},百思不得其解,所以用一下代码进行验证。PS,哎,golang的文档还是太弱了啊。package mainimport ( "fmt" "html/template" "net/http" "os")原创 2013-07-18 14:40:55 · 12549 阅读 · 0 评论 -
golang语言实现读取csv文件内容,把相同的内容提取到另外一个文件
package mainimport ("encoding/csv""fmt""io""os""path/filepath""strconv")func CheckErr(err error) {if nil != err {panic(err)}}func GetFullPath(path string) string {absolutePath, _原创 2013-03-07 08:45:39 · 6266 阅读 · 0 评论 -
HTML5 websocket实验,后台为golang http包使用
package mainimport ("code.google.com/p/go.net/websocket""fmt""log""net/http""html/template")func Echo(ws *websocket.Conn){var err errorfor{fmt.Println("start")var reply stringif err = we原创 2013-03-07 08:55:54 · 4513 阅读 · 0 评论 -
利用golang的template模板包进行web开发
package mainimport ("fmt""html/template""net/http""os")type Person struct {Name stringAge intEmails []stringCompany stringRole string}type OnlineUser struct {User []*原创 2013-03-07 09:01:48 · 26543 阅读 · 1 评论 -
golang 操作MySql数据库
package mainimport "database/sql"import _ "github.com/Go-SQL-Driver/MySQL"import "fmt"func checkErr(err error){if err != nil{fmt.Println(err)panic(err)}}func main(){db, er原创 2013-03-07 08:58:13 · 7185 阅读 · 0 评论 -
golange 错误如下 Resource interpreted as Script but transferred with MIME type text
这是由于服务器端给你发回的javascript http响应的content-type值是text/plain(默认。)而你所期望返回的是兼容javascript类型的。解决方法,可以在服务器端的返回字段里增加:content-type : application/x-javascript具体在golang的解决方案如下:func router(w http.Respons原创 2013-04-10 11:10:48 · 15189 阅读 · 0 评论 -
HTPP cookie 失效后
在Chrome上,Cookie设置的时间失效后,chrome会自动帮你清除掉cookie内容。原创 2013-04-27 17:20:16 · 793 阅读 · 0 评论 -
golang http.HandleFunc("/",func())每次都会匹配
利用golang的net/http库的函数: http.HandleFunc("/",func())进行注册,每次有http request的时候都会匹配“/"进行注册的函数。原因不明!原创 2013-05-17 14:27:06 · 9265 阅读 · 0 评论 -
X:none node Title golang版本错误
import C:\go/pkg/windows_386/fmt.a: object is [windows 386 weekly. 2012-02-22 +96bd78e7d35e X:none] expected [windows 386 weekly. 2011-12-22 11071 X:none] main.go1:: 编译程序出现上述错误!read Templ原创 2013-05-14 10:26:27 · 1433 阅读 · 0 评论 -
golang变量作用域问题
func f()(string,error){ return "test scope of variable",nil}func main() { var name string if name,err := f();nil ==err{ println(name) } println(name) fmt.Println("He原创 2013-04-28 11:05:07 · 5508 阅读 · 0 评论 -
统计代码行数工具 用golang实现
首先:修改conf文件,配置要查找什么后缀的文件代码行数使用方法:countcodeliine filename or nothing(计算可执行程序所在目录)实现功能:1,统计代码行数2,可以根据配置文件(conf)来进行设置要对什么类型的代码进行统计3,统计每个类型文件行数,和总行数将来要实现功能:1,注释行数2,注释率3,导出csv功能原创 2013-06-03 00:10:48 · 3716 阅读 · 0 评论 -
golang实现直接插入排序算法
直接插入排序算法golang实现版本:插入算法概要:建立一个空的链表,首先在要排序的数组中随便拿出来一个数据,放在新建链表的开头,然后不停的从原数组中获取数据,并和链表中的数据进行比较,大就放在链表的右端,小就放在链表的左端,一直循环直到结束为止,排序完成。package mainimport( "container/list" "fmt")var old原创 2013-06-06 15:36:01 · 3576 阅读 · 0 评论 -
关于过度设计和业务逻辑的错误
前段时间对一个博客进行设计,在关于封装查询语句的函数上面做一个错误的决定,那就是过度设计,原因是这样滴:因为需求没有完全弄明白,也不知道以后会不会添加别的查询判断语句,所以在函数的参数,返回值等方面抉择的类型为不定型interface{}也就是C的(void*),当时是这样想滴:以后就算修改了,或添加了查询条件语句也没关系,因为参数为不定型,所以函数调用的时候没有任何的影响,只在函数内部进行修原创 2013-06-20 15:04:40 · 1243 阅读 · 0 评论 -
ubuntu14.04 imagemagic 图片缩放 ‘大坑‘
para := fmt.Sprintf(`%s[0] -background white -flatten -alpha off -resize %sx%s %s`, in, w, h, out)原创 2014-05-29 12:20:54 · 2135 阅读 · 0 评论