天天看点

file.encoding的简单学习 java

<code>package</code> <code>com.hanchao.base64;</code>

<code>/***********************</code>

<code> </code><code>* file.encoding的简单学习</code>

<code> </code><code>* @author:han  </code>

<code> </code><code>* @version:1.0      </code>

<code> </code><code>* @created:2014-3-28  </code>

<code> </code><code>***********************</code>

<code> </code><code>*参考:</code>

<code> </code><code>*http://hi.baidu.com/fengchuyang/item/5fe35ecd10b7bb24a0b50ad4</code>

<code> </code><code>*</code>

<code> </code><code>*/</code>

<code>public</code> <code>class</code> <code>Test2 {</code>

<code>      </code> 

<code>    </code><code>public</code> <code>static</code> <code>void</code> <code>main(String[] args) </code><code>throws</code> <code>Exception {</code>

<code>          </code> 

<code>        </code><code>/**</code>

<code>         </code><code>* file.encoding的简单学习</code>

<code>         </code><code>* 说明:</code>

<code>         </code><code>* 1.不是操作系统的编码</code>

<code>         </code><code>* 2.它的值为保存每个程序的main入口的那个java文件的保存编码</code>

<code>         </code><code>*   (点击文件--&gt;属性--&gt;text file encoding(other的值),</code>

<code>         </code><code>*   这是使用eclipse 编译器)</code>

<code>         </code><code>*</code>

<code>         </code><code>*/</code>

<code>        </code><code>System.out.println(</code><code>"1.file.encoding : "</code> <code>+ System.getProperty(</code><code>"file.encoding"</code><code>));</code>

<code>        </code><code>System.out.println(</code><code>"2.sun.jnu.encoding : "</code> <code>+ System.getProperty(</code><code>"sun.jnu.encoding"</code><code>));</code>

<code>         </code><code>*  1、文件保存的编码为:GB2312 时</code>

<code>            </code><code>编译执行之后,得到的结果为:</code>

<code>              </code> 

<code>            </code><code>GB2312</code>

<code>            </code><code>2、文件保存的编码为:GBK 时</code>

<code>            </code><code>GBK</code>

<code>            </code><code>3、文件保存的编码为:UTF-8时</code>

<code>            </code><code>UTF-8</code>

<code>            </code><code>从上面的三个结果可以看出,file.encoding的值并不是操作系统os的默认编码</code>

<code>            </code><code>而是main入口函数所在的类的保存编码.</code>

<code>            </code><code>****************************************************</code>

<code>            </code><code>在一个运行的应用程序中</code>

<code>            </code><code>file.encoding的值只有一个,并且值为入口函数的保存编码的值</code>

<code>        </code><code>String temp = </code><code>"abc韩超"</code><code>;</code>

<code>        </code><code>//字符编码</code>

<code>        </code><code>//temp.getBytes("GBK");</code>

<code>        </code><code>//temp.getBytes("UTF-8");</code>

<code>        </code><code>new</code> <code>String(temp.getBytes(</code><code>"utf-8"</code><code>),</code><code>"utf-8"</code><code>);</code>

<code>        </code><code>System.out.println(</code><code>"NULL:"</code> <code>+ temp);</code>

<code>        </code><code>System.out.println(</code><code>"gbk:"</code> <code>+ </code><code>new</code> <code>String(temp.getBytes(),</code><code>"GBK"</code><code>));</code>

<code>        </code><code>System.out.println(</code><code>"UTF-8:"</code> <code>+ </code><code>new</code> <code>String(temp.getBytes(),</code><code>"UTF-8"</code><code>));</code>

<code>    </code><code>}</code>

<code>}</code>

     本文转自韩立伟 51CTO博客,原文链接:http://blog.51cto.com/hanchaohan/1385800,如需转载请自行联系原作者