常见的编码格式包括 UTF-8、ASCII、ISO-8859-1、GBK转换方法

常见的编码格式包括 UTF-8、ASCII、ISO-8859-1、GBK转换方法

  • [Python 示例](#Python 示例)
  • [Ruby 示例](#Ruby 示例)
  • [Java 示例](#Java 示例)
  • [Go 示例](#Go 示例)

Python 示例

python 复制代码
def convert_encoding(input_str, from_encoding, to_encoding):
    return input_str.encode(from_encoding).decode(to_encoding)

# 使用示例
converted_str = convert_encoding("你好,世界!", "utf-8", "gbk")
print(converted_str)

Ruby 示例

ruby 复制代码
def convert_encoding(input_str, from_encoding, to_encoding)
    input_str.encode(to_encoding, from_encoding)
end

# 使用示例
converted_str = convert_encoding("你好,世界!", "UTF-8", "GBK")
puts converted_str

Java 示例

java 复制代码
public class EncodingConverter {
    public static String convertEncoding(String inputStr, String fromEncoding, String toEncoding) throws UnsupportedEncodingException {
        return new String(inputStr.getBytes(fromEncoding), toEncoding);
    }

    public static void main(String[] args) {
        try {
            String convertedStr = convertEncoding("你好,世界!", "UTF-8", "GBK");
            System.out.println(convertedStr);
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
    }
}

Go 示例

go 复制代码
package main

import (
    "fmt"
    "golang.org/x/text/encoding/simplifiedchinese"
    "golang.org/x/text/transform"
    "io/ioutil"
    "strings"
)

func convertEncoding(inputStr, fromEncoding, toEncoding string) (string, error) {
    var reader *strings.Reader
    if fromEncoding == "UTF-8" && toEncoding == "GBK" {
        reader = strings.NewReader(inputStr)
        transformer := transform.NewReader(reader, simplifiedchinese.GBK.NewEncoder())
        result, err := ioutil.ReadAll(transformer)
        if err != nil {
            return "", err
        }
        return string(result), nil
    }
    // 可以添加更多编码转换逻辑
    return inputStr, nil
}

func main() {
    convertedStr, err := convertEncoding("你好,世界!", "UTF-8", "GBK")
    if err != nil {
        fmt.Println("编码转换错误:", err)
        return
    }
    fmt.Println(convertedStr)
}
相关推荐
WiChP6 小时前
【V0.1B5】从零开始的2D游戏引擎开发之路
java·服务器·数据库
cch89186 小时前
汇编与Java:底层与高层的编程对决
java·开发语言·汇编
荒川之神7 小时前
拉链表概念与基本设计
java·开发语言·数据库
cch89187 小时前
汇编与Go:底层到高层的编程差异
java·汇编·golang
chushiyunen7 小时前
python中的@Property和@Setter
java·开发语言·python
禾小西7 小时前
Java中使用正则表达式核心解析
java·python·正则表达式
yoyo_zzm7 小时前
JAVA (Springboot) i18n国际化语言配置
java·spring boot·python
APIshop8 小时前
Java获取京东商品详情接口(item_get)实战指南
java·linux·数据库