天天看點

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,如需轉載請自行聯系原作者