golang 读取文件的时候( ReadFile func(filename string) ([]byte, error) ),返回的是utf-8格式的[]byte,对于中文字符来讲,无法将[]byte直接转化为string。所以需要手动将 UIF-8 转换成 GBK 。
GitHub上的项目 https://github.com/axgle/mahonia 可以解决编码转换的问题。
win下和linux下.txt文件的格式不同,因为DOS下的编辑器和Linux编辑器对文件行末的回车符处理不一致
mahonia解析win下的文本文件,所以要把win下的文本文件放到linux服务器环境中。
直接将字符变量赋值给整型变量,即可实现字符到对应ASCII码的转换。具体实现方法可以参考如下程序段:
char str[]="abds%*&34dfs" // 定义一个字符数组,存放待转换为ASCII码的字符串
int AsciiNum[20] // 定义一个整型数组,存放字符所对应的ASCII码值,数组大小根据字符串长度进行设置
int i
// 将字符串的每个字符逐个赋值给整型数组AsciiNum,即实现字符到ASCII码值的转换
for(i=0i<strlen(str)i++)
{
AsciiNum[i] = str[i] // 最后数组AsciiNum就是字符串每个字符所对应ASCII码值的数组
}