当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。