package main
import (
"golang.org/x/text/transform"
"bytes"
"golang.org/x/text/encoding/charmap"
"golang.org/x/text/encoding/simplifiedchinese"
"io/ioutil"
"fmt"
"math/rand"
"time"
)
func main() {
rand.Seed(time.Now().Unix())
fmt.Println(string(convert(rand.Intn(47),[]byte("golang学习"))))
}
func convert(i int, s []byte) ([]byte) {
var reader *transform.Reader
switch i {
case 1:
reader = transform.NewReader(bytes.NewReader(s), charmap.ISO8859_1.NewDecoder())
case 2:
reader = transform.NewReader(bytes.NewReader(s), charmap.ISO8859_2.NewDecoder())
case 3:
reader = transform.NewReader(bytes.NewReader(s), charmap.ISO8859_3.NewDecoder())
case 4:
reader = transform.NewReader(bytes.NewReader(s), charmap.ISO8859_4.NewDecoder())
case 5:
reader = transform.NewReader(bytes.NewReader(s), charmap.ISO8859_5.NewDecoder())
case 6:
reader = transform.NewReader(bytes.NewReader(s), charmap.ISO8859_6.NewDecoder())
case 7:
reader = transform.NewReader(bytes.NewReader(s), charmap.ISO8859_7.NewDecoder())
case 8:
reader = transform.NewReader(bytes.NewReader(s), charmap.ISO8859_8.NewDecoder())
case 9:
reader = transform.NewReader(bytes.NewReader(s), charmap.ISO8859_9.NewDecoder())
case 10:
reader = transform.NewReader(bytes.NewReader(s), charmap.ISO8859_10.NewDecoder())
case 11:
reader = transform.NewReader(bytes.NewReader(s), charmap.ISO8859_13.NewDecoder())
case 12:
reader = transform.NewReader(bytes.NewReader(s), charmap.ISO8859_14.NewDecoder())
case 13:
reader = transform.NewReader(bytes.NewReader(s), charmap.ISO8859_15.NewDecoder())
case 14:
reader = transform.NewReader(bytes.NewReader(s), charmap.ISO8859_16.NewDecoder())
case 15:
reader = transform.NewReader(bytes.NewReader(s), charmap.KOI8R.NewDecoder())
case 16:
reader = transform.NewReader(bytes.NewReader(s), charmap.KOI8U.NewDecoder())
case 17:
reader = transform.NewReader(bytes.NewReader(s), charmap.Macintosh.NewDecoder())
case 18:
reader = transform.NewReader(bytes.NewReader(s), charmap.MacintoshCyrillic.NewDecoder())
case 19:
reader = transform.NewReader(bytes.NewReader(s), charmap.Windows874.NewDecoder())
case 20:
reader = transform.NewReader(bytes.NewReader(s), charmap.Windows1250.NewDecoder())
case 21:
reader = transform.NewReader(bytes.NewReader(s), charmap.Windows1251.NewDecoder())
case 22:
reader = transform.NewReader(bytes.NewReader(s), charmap.Windows1252.NewDecoder())
case 23:
reader = transform.NewReader(bytes.NewReader(s), charmap.Windows1253.NewDecoder())
case 24:
reader = transform.NewReader(bytes.NewReader(s), charmap.Windows1254.NewDecoder())
case 25:
reader = transform.NewReader(bytes.NewReader(s), charmap.Windows1255.NewDecoder())
case 26:
reader = transform.NewReader(bytes.NewReader(s), charmap.Windows1256.NewDecoder())
case 27:
reader = transform.NewReader(bytes.NewReader(s), charmap.Windows1257.NewDecoder())
case 28:
reader = transform.NewReader(bytes.NewReader(s), charmap.Windows1258.NewDecoder())
case 29:
reader = transform.NewReader(bytes.NewReader(s), charmap.XUserDefined.NewDecoder())
case 30:
reader = transform.NewReader(bytes.NewReader(s), charmap.CodePage037.NewDecoder())
case 31:
reader = transform.NewReader(bytes.NewReader(s), charmap.CodePage437.NewDecoder())
case 32:
reader = transform.NewReader(bytes.NewReader(s), charmap.CodePage850.NewDecoder())
case 33:
reader = transform.NewReader(bytes.NewReader(s), charmap.CodePage852.NewDecoder())
case 34:
reader = transform.NewReader(bytes.NewReader(s), charmap.CodePage855.NewDecoder())
case 35:
reader = transform.NewReader(bytes.NewReader(s), charmap.CodePage858.NewDecoder())
case 36:
reader = transform.NewReader(bytes.NewReader(s), charmap.CodePage860.NewDecoder())
case 37:
reader = transform.NewReader(bytes.NewReader(s), charmap.CodePage862.NewDecoder())
case 38:
reader = transform.NewReader(bytes.NewReader(s), charmap.CodePage863.NewDecoder())
case 39:
reader = transform.NewReader(bytes.NewReader(s), charmap.CodePage865.NewDecoder())
case 40:
reader = transform.NewReader(bytes.NewReader(s), charmap.CodePage865.NewDecoder())
case 41:
reader = transform.NewReader(bytes.NewReader(s), charmap.CodePage866.NewDecoder())
case 42:
reader = transform.NewReader(bytes.NewReader(s), charmap.CodePage1047.NewDecoder())
case 43:
reader = transform.NewReader(bytes.NewReader(s), charmap.CodePage1140.NewDecoder())
case 44:
reader = transform.NewReader(bytes.NewReader(s), simplifiedchinese.GBK.NewEncoder())
case 45:
reader = transform.NewReader(bytes.NewReader(s), simplifiedchinese.HZGB2312.NewEncoder())
case 46:
reader = transform.NewReader(bytes.NewReader(s), simplifiedchinese.GB18030.NewEncoder())
}
d, _ := ioutil.ReadAll(reader)
return d
}
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
常用算法深入学习实录
张子言 / 电子工业出版社 / 2013-10 / 89.00元
对于任何一门编程语言来说,算法都是程序的“灵魂”。正是因为算法如此重要,所以笔者精心编写了本书,希望通过书中的内容引领广大读者一起探讨学习算法的奥秘,带领广大读者真正步入程序开发的高级世界。 本书共分15章,循序渐进、由浅入深地详细讲解算法的核心内容,并通过具体实例的实现过程演练各个知识点的具体用法。本书首先详细讲解算法的基础知识,剖析了将算法称为“程序灵魂”的原因。然后详细讲解算法技术的核......一起来看看 《常用算法深入学习实录》 这本书的介绍吧!