當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java java.io.UnsupportedEncodingException用法及代碼示例


Constructor toGenericString() 當在 java 字符串或字節中使用不受支持的字符編碼方案時,會發生這種情況。 java String getBytes方法將請求的字符串轉換為指定編碼格式的字節。如果 java 不支持該編碼格式,則 String getBytes 方法將拋出 java.io.UnsupportedEncodingException 並給出給定的編碼格式。

字符編碼用於確定如何將原始二進製解釋為字符。 CP1252 中英語 Windows 係統的默認編碼。其他語言和係統可以使用不同的默認編碼。 UTF-8編碼方案通常用作字符編碼方案。在java中,String.getBytes()和StringCoding.encode()方法用於在原始字節和java字符串之間進行解釋。

類查看器

java.lang.Object
    java.lang.Throwable
        java.lang.Exception
            java.io.IOException
                java.io.UnsupportedEncodingException

Remember:它確實實現了可序列化接口。

用法: 
public class UnsupportedEncodingException
extends IOException

不支持字符編碼。進一步,讓我們來看看這個類的構造函數,如下所示:

  1. UnsupportedEncodingException():構造一個沒有詳細消息的UnsupportedEncodingException。
  2. 不支持的EncodingException(字符串):構造一個帶有詳細消息的UnsupportedEncodingException。

執行:

現在讓我們找到一種方法來重現這個問題,如 java 中的 UnsupportedEncodingException 所示。我們將在下麵提供的示例的幫助下繼續下去,該示例將拋出 java.io.UnsupportedEncodingException 。 “UTF” 編碼方案是無效的編碼方案名稱。這是因為如果編碼方案未知或不支持,java無法將字符串解釋為字節。 Java 將拋出 java.io。 UnsupportedEncodingException 如果識別出未知或不支持的編碼方法。

示例

Java


// Java Program to Illustrate UnsupportedEncodingException
// Main class
// StringGetBytes
class GFG {
    // Main driver method
    public static void main(String[] args) throws Exception
    {
        // Custom input string
        String str = "GeeksforGeeks";
        // Declaring a byte array
        byte[] bytes;
        bytes = str.getBytes("UTF");
        // Now here we are trying printing
        // given string and corresponding output string
        System.out.println("Given  String : " + str);
        System.out.println("Output bytes   : " + bytes);
    }
}

輸出:

現在我們已經熟悉了異常並討論了它發生的原因。現在讓我們通過提出解決方案來找出擺脫此異常的方法。 java支持的編碼方案名稱應在String.getBytes方法中提供。請仔細閱讀此處提供的一組方法在繼續之前。

因此,當需要對編碼過程進行更多控製時,應使用CharsetEncoder 類。 String.getBytes 方法返回一個字節數組。

示例

Java


// Java Program to Resolve UnsupportedEncodingException
// Main class
// StringGetBytes
public class GFG {
    // Main driver method
    public static void main(String[] args) throws Exception
    {
        // Custom input string
        String str = "GeeksforGeeks";
        byte[] bytes;
        // Getting output bytes via help of getBytes()
        // method
        bytes = str.getBytes("UTF-16");
        // Print and display input string and
        // corresponding UTF16 string
        System.out.println("Given  String : " + str);
        System.out.println("Output bytes   : " + bytes);
    }
}
輸出
Given  String : GeeksforGeeks
Output bytes   : [B@7cc355be


相關用法


注:本文由純淨天空篩選整理自praveen13kulkarni大神的英文原創作品 java.io.UnsupportedEncodingException in Java with Examples。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。