我的培训日记-1

传智播客 日记 - 1
 
1. 由内存中一切皆二进制引出字符编码的讲解
大陆写的“中”到台湾显示不正常的原理分析,翻译软件的翻译原理, GBK--> “中” -->BIG5 。讲解 UTF-8 编码和 unicode 编码, ASCII Unicode 码的转换规则,演示记事本显示字符时的趣味问题,分析乱码原因, GB 2312 中也包含英文字符,如何识别GB 2312 中的英文与汉字。最后讲了GB18030 ,如何支持?
2. 讲解了xml 文档的编码问题。
讲解 <?xml version="1.0"?> 文档声明时,强调了 version 的重要性,例如, qq 通讯协议的操作码刚开始是一个字节,后来随着新需求不断被发掘出来,发现需要用两个操作码了,要想平滑过渡,就非常需要这个版本了,新的软件就可以识别老和新通讯协议了。
沈继龙:以为指定了 encoding="GBK" ,那文件就用 GBK 保存了,这正好理解反了。我是张,我戴顶帽子说明我是张,以便解析软件知道我是谁,如果我戴顶李的帽子,解析软件就认为我是李,显然就出了问题。
3. 接着讲解了CDATA 区的作用
<country>
       <![CDATA[
       if(x<y)
       {
       }
       ]]>
</country>
要小心的是 XML 文档是通过一个程序生成出来的,如下所示的一个 jsp 程序,对于用变量生成的信息,要特别注意加上 CDATA 区。
<%@page pageEncoding="GBK"%>
<%@page contentType="text/xml;charset=UTF-8"%>
<?xml version="1.0" encoding="UTF-8"?>
<country>
              <name> 中国 </name>
              <info><![CDATA[${param.info}]]></info>
</country>
这个 JSP 文件涉及了两个编码:源文件是用什么码写的,程序执行后以什么码输出结果。
为了加深理解处理软件必须文件中的字符编码的情况,又演示了 javac 编译 utf-8 源文件的问题。
4. <%@page contentType="text/html;charset=GBK"%>// 修改contentType="audio/x-mp3" 说明头的作用
5. 最后做了一个识别中英文字符的JAVA 程序
       class Ce
{
       public static void main(String args[]) throws Exception
       {
              byte[] buf = new byte[1024];
              int len = System.in.read(buf);
              for(int i=0;i<len;i++)
              {
       /* 使用 & 运算符 , buf[i] 8 的二进制码进行与运算 , 如果最高位为 0, buf[i] 为英文 , 否则为中文 */
if((buf[i]& 0x80) == 0)
                     {
                            if(buf[i]=='\r' || buf[i]=='\n')
                                   continue;
                            System.out.write('(');
                            System.out.write(buf[i]);
                            System.out.write(')');
                     }
                     else
                     {
                            System.out.write('(');
                            System.out.write(buf[i]);
                            System.out.write(buf[++i]);
                            System.out.write(')');
                     }
                     System.out.flush();
              }
       }
}

你可能感兴趣的:(职场,休闲,培训日记)