记得第一次将采购员在采购系统中生成PO(订单),导出为CSV格式的文件后,兴冲冲地再将5个CSV文件导入到我们的ERP系统中去.批处理日志中报错了:不可识别的字符!
奇怪了,为什么不可识别呵
? 后来查ERP系统相关资料:原来是在PO导入的时候字符集一定要是Ansi编码.
下面我们谈谈计算机编码.
编码指不同国家的语言在计算机中的一种存储和解释规范.
ANSI与UNICODE
到底什么是ANSI,什么是UNICODE呢?其实这是两种不同的编码方式标准,ANSI中的字符采用8bit(一个字节),而UNICODE中的字符采用16bit(两个字节).8bit的ANSI编码只能表示256种字符,表示26个英文字母是绰绰有余的,但是表示汉字,韩国语,日语等有着成千上万个字符的非西方字符肯定就不够了,正是如此才引入了UNICODE标准.
由于我们现在的默认字符集为UNICODE编码 (宽字符),所以我们要将它们转换成ANSI编码(窄字符).

StrConv(str5.ToString(), VbStrConv.Narrow) , 大家可以看出来了,只要使用StrConv函数就可以将文字在Unicode编码和Ansi编码之间任意转换了. 用法: StrConv(待转换字符串, 欲转换格式)
待续....
博主将采购系统生成的PO导出为CSV文件导入ERP系统报错,原因是PO导入时字符集需为Ansi编码。介绍了ANSI和UNICODE两种编码方式,ANSI字符用8bit,UNICODE用16bit,默认字符集为UNICODE,可使用StrConv函数在两者间转换。
2398

被折叠的 条评论
为什么被折叠?



