标准库

名称	    	摘要
archive
tar tar包实现了tar格式压缩文件的存取.
zip zip包提供了zip档案文件的读写服务.
bufio bufio 包实现了带缓存的I/O操作.
builtin builtin 包为Go的预声明标识符提供了文档.
bytes bytes包实现了操作[]byte的常用函数.
compress
bzip2 bzip2包实现bzip2的解压缩.
flate flate包实现了deflate压缩数据格式,参见RFC 1951.
gzip gzip包实现了gzip格式压缩文件的读写,参见RFC 1952.
lzw lzw包实现了Lempel-Ziv-Welch数据压缩格式,这是一种T. A. Welch在“A Technique for High-Performance Data Compression”一文(Computer, 17(6) (June 1984), pp 8-19)提出的一种压缩格式.
zlib zlib包实现了对zlib格式压缩数据的读写,参见RFC 1950.
container
heap heap包提供了对任意类型(实现了heap.Interface接口)的堆操作.
list list包实现了双向链表.
ring ring实现了环形链表的操作.
context Package context defines the Context type, which carries deadlines, cancelation signals, and other request-scoped values across API boundaries and between processes.
crypto crypto包搜集了常用的密码(算法)常量.
aes aes包实现了AES加密算法,参见U.S. Federal Information Processing Standards Publication 197.
cipher cipher包实现了多个标准的用于包装底层块加密算法的加密算法实现.
des des包实现了DES标准和TDEA算法,参见U.S. Federal Information Processing Standards Publication 46-3.
dsa dsa包实现FIPS 186-3定义的数字签名算法(Digital Signature Algorithm),即DSA算法.
ecdsa ecdsa包实现了椭圆曲线数字签名算法,参见FIPS 186-3.
elliptic elliptic包实现了几条覆盖素数有限域的标准椭圆曲线.
hmac hmac包实现了U.S. Federal Information Processing Standards Publication 198规定的HMAC(加密哈希信息认证码).
md5 md5包实现了MD5哈希算法,参见RFC 1321.
rand rand包实现了用于加解密的更安全的随机数生成器.
rc4 rc4包实现了RC4加密算法,参见Bruce Schneier's Applied Cryptography.
rsa rsa包实现了PKCS#1规定的RSA加密算法.
sha1 sha1包实现了SHA1哈希算法,参见RFC 3174.
sha256 sha256包实现了SHA224和SHA256哈希算法,参见FIPS 180-4.
sha512 sha512包实现了SHA384和SHA512哈希算法,参见FIPS 180-2.
subtle Package subtle implements functions that are often useful in cryptographic code but require careful thought to use correctly.
tls tls包实现了TLS 1.2,细节参见RFC 5246.
x509 x509包解析X.509编码的证书和密钥.
pkix pkix包提供了共享的、低层次的结构体,用于ASN.1解析和X.509证书、CRL、OCSP的序列化.
database
sql sql 包提供了通用的SQL(或类SQL)数据库接口.
driver driver包定义了应被数据库驱动实现的接口,这些接口会被sql包使用.
debug
dwarf Package dwarf provides access to DWARF debugging information loaded from executable files, as defined in the DWARF 2.0 Standard at http://dwarfstd.org/doc/dwarf-2.0.0.pdf
elf Package elf implements access to ELF object files.
gosym Package gosym implements access to the Go symbol and line number tables embedded in Go binaries generated by the gc compilers.
macho Package macho implements access to Mach-O object files.
pe Package pe implements access to PE (Microsoft Windows Portable Executable) files.
plan9obj Package plan9obj implements access to Plan 9 a.out object files.
encoding encoding包定义了供其它包使用的可以将数据在字节水平和文本表示之间转换的接口.
ascii85 ascii85 包是对 ascii85 的数据编码的实现.
asn1 asn1包实现了DER编码的ASN.1数据结构的解析,参见ITU-T Rec X.690.
base32 base32包实现了RFC 4648规定的base32编码.
base64 base64实现了RFC 4648规定的base64编码.
binary binary包实现了简单的数字与字节序列的转换以及变长值的编解码.
csv csv读写逗号分隔值(csv)的文件.
gob gob包管理gob流——在编码器(发送器)和解码器(接受器)之间交换的binary值.
hex hex包实现了16进制字符表示的编解码.
json json包实现了json对象的编解码,参见RFC 4627.
pem pem包实现了PEM数据编码(源自保密增强邮件协议).
xml Package xml implements a simple XML 1.0 parser that understands XML name spaces.
errors error 包实现了用于错误处理的函数.
expvar expvar包提供了公共变量的标准接口,如服务的操作计数器.
flag flag 包实现命令行标签解析.
fmt fmt 包实现了格式化I/O函数,类似于C的 printf 和 scanf.
go
ast Package ast declares the types used to represent syntax trees for Go packages.
build Package build gathers information about Go packages.
constant Package constant implements Values representing untyped Go constants and their corresponding operations.
doc Package doc extracts source code documentation from a Go AST.
format Package format implements standard formatting of Go source.
importer Package importer provides access to export data importers.
parser Package parser implements a parser for Go source files.
printer Package printer implements printing of AST nodes.
scanner Package scanner implements a scanner for Go source text.
token Package token defines constants representing the lexical tokens of the Go programming language and basic operations on tokens (printing, predicates).
types Package types declares the data types and implements the algorithms for type-checking of Go packages.
hash hash包提供hash函数的接口.
adler32 adler32包实现了Adler-32校验和算法,参见RFC 1950.
crc32 crc32包实现了32位循环冗余校验(CRC-32)的校验和算法.
crc64 Package crc64 implements the 64-bit cyclic redundancy check, or CRC-64, checksum.
fnv fnv包实现了FNV-1和FNV-1a(非加密hash函数).
html html包提供了用于转义和解转义HTML文本的函数.
template template包(html/template)实现了数据驱动的模板,用于生成可对抗代码注入的安全HTML输出.
image image实现了基本的2D图片库.
color color 包实现了基本的颜色库。
palette palette包提供了标准的调色板.
draw draw 包提供组装图片的方法.
gif gif 包实现了GIF图片的解码.
jpeg jpeg包实现了jpeg格式图像的编解码.
png png 包实现了PNG图像的编码和解码.
index
suffixarray suffixarrayb包通过使用内存中的后缀树实现了对数级时间消耗的子字符串搜索.
io io 包为I/O原语提供了基础的接口.
ioutil ioutil 实现了一些I/O的工具函数。
log log包实现了简单的日志服务.
syslog syslog包提供一个简单的系统日志服务的接口.
math math 包提供了基本常数和数学函数。
big big 包实现了(大数的)高精度运算.
cmplx cmplx 包为复数提供了基本的常量和数学函数.
rand rand 包实现了伪随机数生成器.
mime mime实现了MIME的部分规定.
multipart multipart实现了MIME的multipart解析,参见RFC 2046.
quotedprintable Package quotedprintable implements quoted-printable encoding as specified by RFC 2045.
net net包提供了可移植的网络I/O接口,包括TCP/IP、UDP、域名解析和Unix域socket.
http http包提供了HTTP客户端和服务端的实现.
cgi cgi 包实现了RFC3875协议描述的CGI(公共网关接口).
cookiejar cookiejar包实现了保管在内存中的符合RFC 6265标准的http.CookieJar接口.
fcgi fcgi 包实现了FastCGI协议.
httptest httptest 包提供HTTP测试的单元工具.
httptrace Package httptrace provides mechanisms to trace the events within HTTP client requests.
httputil httputil包提供了HTTP公用函数,是对net/http包的更常见函数的补充.
pprof pprof 包通过提供HTTP服务返回runtime的统计数据,这个数据是以pprof可视化工具规定的返回格式返回的.
mail mail 包实现了解析邮件消息的功能.
rpc rpc 包提供了一个方法来通过网络或者其他的I/O连接进入对象的外部方法.
jsonrpc jsonrpc 包使用了rpc的包实现了一个JSON-RPC的客户端解码器和服务端的解码器.
smtp smtp包实现了简单邮件传输协议(SMTP),参见RFC 5321.
textproto textproto实现了对基于文本的请求/回复协议的一般性支持,包括HTTP、NNTP和SMTP.
url url包解析URL并实现了查询的逸码,参见RFC 3986.
os os包提供了操作系统函数的不依赖平台的接口.
exec exec包执行外部命令.
signal signal包实现了对输入信号的访问.
user user包允许通过名称或ID查询用户帐户.
path path实现了对斜杠分隔的路径的实用操作函数.
filepath filepath包实现了兼容各操作系统的文件路径的实用操作函数.
plugin Package plugin implements loading and symbol resolution of Go plugins.
reflect reflect包实现了运行时反射,允许程序操作任意类型的对象.
regexp regexp包实现了正则表达式搜索.
syntax Package syntax parses regular expressions into parse trees and compiles parse trees into programs.
runtime TODO(osc): 需更新 runtime 包含与Go的运行时系统进行交互的操作,例如用于控制Go程的函数.
cgo cgo 包含有 cgo 工具生成的代码的运行时支持.
debug debug 包含有程序在运行时调试其自身的功能.
pprof pprof 包按照可视化工具 pprof 所要求的格式写出运行时分析数据.
race race 包实现了数据竞争检测逻辑.
trace Go execution tracer.
sort sort 包为切片及用户定义的集合的排序操作提供了原语.
strconv strconv包实现了基本数据类型和其字符串表示的相互转换.
strings strings包实现了用于操作字符的简单函数.
sync sync 包提供了互斥锁这类的基本的同步原语.
atomic atomic 包提供了底层的原子性内存原语,这对于同步算法的实现很有用.
syscall Package syscall contains an interface to the low-level operating system primitives.
testing Package testing provides support for automated testing of Go packages.
iotest Package iotest implements Readers and Writers useful mainly for testing.
quick Package quick implements utility functions to help with black box testing.
text
scanner scanner包提供对utf-8文本的token扫描服务.
tabwriter tabwriter包实现了写入过滤器(tabwriter.Writer),可以将输入的缩进修正为正确的对齐文本.
template template包实现了数据驱动的用于生成文本输出的模板.
parse Package parse builds parse trees for templates as defined by text/template and html/template.
time time包提供了时间的显示和测量用的函数.
unicode unicode 包提供了一些测试Unicode码点属性的数据和函数.
utf16 utf16 包实现了对UTF-16序列的编码和解码。
utf8 utf8 包实现了支持UTF-8文本编码的函数和常量.
unsafe unsafe 包含有关于Go程序类型安全的所有操作.

go学习笔记-标准库的更多相关文章

  1. [Golang学习笔记] 03 库源码文件

    库源码文件:不能被直接运行的源码文件,它仅用于存放程序实体,这些程序实体可以被其他代码使用. 代码包声明的基本规则: 1. 同目录下的源码文件的代码包声明语句要一致.也就是说,它们要同属于一个代码包( ...

  2. 从0开始的Python学习017Python标准库

    简介 Python标准库使随着Python附带安装的,它包含很多有用的模块.所以对一个Python开发者来说,熟悉Python标准库是十分重要的.通过这些库中的模块,可以解决你的大部分问题. sys模 ...

  3. 一起学习Boost标准库--Boost.StringAlgorithms库

    概述 在未使用Boost库时,使用STL的std::string处理一些字符串时,总是不顺手,特别是当用了C#/Python等语言后trim/split总要封装一个方法来处理.如果没有形成自己的com ...

  4. 一起学习Boost标准库--Boost.texical_cast&format库

    今天接续介绍有关字符串表示相关的两个boost库: lexical_cast 将数值转换成字符串 format 字符串输出格式化 首先,介绍下lexical_cast ,闻其名,知其意.类似C中的at ...

  5. VC学习笔记----STL库

      STL = Standard Template Library,标准模板库,惠普实验室开发的一系列软件的统称.它是由Alexander Stepanov.Meng Lee和David R Muss ...

  6. HTML学习笔记——标准网页设计+使用CSS、Javascript

    一.标准网页设计 1.标准网页概述: 标准网页设计要遵循,内容与表现相分离.   内容 + 表现 = 页面  ---  即 :XHTML + CSS = PAGE 内容与变现相分离,也就是内容使用HT ...

  7. 爬虫学习笔记2requests库和beautifulsoup4库学习笔记

    目录 1.requests库 1.1 安装 2.beautifulsoup4 2.1 常用方法 2.2 bs4 中四大对象种类 2.3 遍历文档树 2.4 搜索文档树 查询id=head的Tag 查询 ...

  8. [Android学习笔记]jackson库的使用

    Jackson库一般用于序列化和反序列化操作,通常会涉及到的操作是: 1. Java Object -> Json String 2. Java Object -> Xml String ...

  9. Go笔记-标准库的介绍

    [unsafe]包含了一些打破Go语言“类型安全”的命令,一般的程序中不会被使用,可用在C/C++程序的调用中 [syscall]底层的外部包,提供了操作系统底层调用的基本接口 [os/exec]提供 ...

随机推荐

  1. ACM HDU-2952 Counting Sheep

    Counting Sheep Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) T ...

  2. 32位 64位 获得进程peb的方法

    基于上一篇文章,大概了解了peb的获取方法,但是那个方法只能获得当前进程的PEB,不能获得其他的进程的PEB.根据那个思想,获得其他进程PEB则需要注入,得到进程信息,然后进程间通信,将信息返回来,经 ...

  3. [原]Linux 修改时区

    1.查看当前时区 date -R 2.修改当前时区 tzselect 之后会出来一个选项菜单,选择你想要的时区就OK了 3.替换系统时区文件 cp /usr/share/zoneinfo/XXX/YY ...

  4. Java反编译工具Jad及插件JadClipse配置教程

    Jad是一个Java的一个反编译工具,和eclipse的插件JadClipse,二者结合可以方便的在eclipse中查看class文件的源代码. 下面介绍一下配置: 下载JadClipse,http: ...

  5. HDU 5724 Chess(SG函数)

    Chess Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submi ...

  6. tmux分屏

    网上很多教程: 新手教程: tmux进入 ctrl + b 命令 % 纵向分屏 命令 方向键 切换 https://lukaszwrobel.pl/blog/tmux-tutorial-split-t ...

  7. PHP------练习------投票

    练习------投票 一 .题目要求: 二 .做法 [1]建立数据库 表名:diaoyantimu 表名: diaoyanxuanxiang [2]封装类文件 <?php class DBDA ...

  8. VMware ESXi 6.5安装

    vmware ESXI6.5安装 注意:我是用vmware模拟,选择镜像就可以进入.正常需要服务器做raid 然后安装的时候选择需要的硬盘 等待加载 按enter继续 F11同意并继续 等待扫描设备 ...

  9. ESlint 语法检测配置说明

    部分vue-cli脚手架创建的默认eslint规则: 代码末尾不能加分号 ; 代码中不能存在多行空行 tab键不能使用,必须换成两个空格 代码中不能存在声明了但未使用的变量 关闭eslint 这里只说 ...

  10. Spring MVC 使用tomcat中配置的数据源

    Spring MVC 使用tomcat中配置的数据源 配置tomcat数据源 打开tomcat目录下的conf目录,编辑sever.xml目录.在<GlobalNamingResources&g ...