首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

编码、R 与 Windows (一)

本期大猫将开个新帖介绍R中的编码问题。就像导言中说的,编码是一个常常被忽视的“小问题”——直到他给你造成成吨的伤害Orz。它尤其频繁出现于数据传输中,例如你在澳大利亚的机器上建立的SAS数据集死活没法在中国的SAS中打开,或是R 操作台打印中文总是乱码等等(关于中文编码请阅读大猫上一期《我知道你不知道GB2312》)。大猫新开这个系列的目的就是帮助大家在最短时间搞明白你所要知道的关于编码的一切。最重要的是,这篇文章不会过于详细的探讨这些编码背后的原理,而是明确告诉大家在什么样的时候应该用什么样的编码(相信这是大家最希望了解的)。至于这些编码背后的复杂原理以及历史,大猫会在最后放上链接,有兴趣的小伙伴可以自行阅读。由于尽量追求通俗易懂,下面内容可能无法在技术上保证100%的严谨,但是大猫保证,以下95%的论述都是正确的!

03
您找到你想要的搜索结果了吗?
是的
没有找到

java编译报错提示编码GBK的不可映射字符啥意思_java字符串编码转换

原因: java程序在编译的时候,需要使用JDK开发工具包中的JAVAC.EXE命令,而JDK开发工具包是国际版的,默认格式为UNICODE的编码格式。因此在默认情况下,javac.exe会采用默认的编码格式,什么是默认的编码格式呢?也就是我们在编译JAVA程序时,在未指定源程序文件的编码格式的情况下,JDK会优先获取操作系统的file.encoding参数,然后JDK就把我们的JAVA源程序从file.encoding编码格式转化为JAVA内部默认的UNICODE格式放到内存中。然后,javac把转换后的UNICODE格式的文件进行编译成class类文件,此时.class文件是UNICODE编码的,它暂放在内存中,之后,JDK将此以UNICODE编码编译后的.class文件保存到操作系统中形成我们见到的.class文件;

02

java 汉字 %ms对不齐_Java中文问题及最优解决方法

计算机最初的操作系统支持的编码是单字节的字符编码,于是,在计算机中一切处理程序最初都是以单字节编码的英文为准进行处理。随着计算机的发展,为了适应世界其它民族的语言(当然包括我们的汉字),人们提出了UNICODE编码,它采用双字节编码,兼容英文字符和其它民族的双字节字符编码,所以,目前,大多数国际性的软件内部均采用UNICODE编码,在软件运行时,它获得本地支持系统(多数时间是操作系统)默认支持的编码格式,然后再将软件内部的UNICODE转化为本地系统默认支持的格式显示出来。java的JDK和jvm即是如此,我这里说的JDK是指国际版的JDK,我们大多数程序员使用的是国际化的JDK版本,以下所有的JDK均指国际化的JDK版本。我们的汉字是双字节编码语言,为了能让计算机处理中文,我们自己制定的gb2312、GBK、GBK2K等标准以适应计算机处理的需求。所以,大部分的操作系统为了适应我们处理中文的需求,均定制有中文操作系统,它们采用的是GBK,GB2312编码格式以正确显示我们的汉字。如:中文Win2K默认采用的是GBK编码显示,在中文WIN2k中保存文件时默认采用的保存文件的编码格式也是GBK的,即,所有在中文WIN2K中保存的文件它的内部编码默认均采用GBK编码,注意:GBK是在GB2312基础上扩充来的。

04
领券