常见的编码格式包括 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)
}
相关推荐
外收内放9 小时前
Python基础语法练习题(75)
开发语言·python·学习
wangbing112510 小时前
平台介绍-modbus设备调试
java
黑十10 小时前
PyTorch 报 “no CUDA GPUs are available“ 怎么办?3 步排查
服务器·网络·人工智能·pytorch·python
西索斯coding10 小时前
gpt-image-2.5-sunburst 和 gemini-3.1-flash-image 差多少?60 组项目素材的成功成本评测框架
java·linux·gpt·ai
threelab10 小时前
开源图片去水印代码
python
wuminyu11 小时前
Java字节码学习总结:字节码如何加载、解析和执行
java·linux·c语言·jvm·c++
Flynn Liang11 小时前
大模型怎么自己调函数?Spring AI 2.0 Tool Calling 自动循环原理 + 完整时序图
java·人工智能·spring·agent·函数调用·springai·toolcalling
taller_200011 小时前
【012】数据类型入门: Excel 数据到 Python 值的转换
python·excel·pie·py
淡漠的蓝精灵12 小时前
web.py:一个简单到极致的 Python Web 框架
开发语言·前端·python·其他
乌暮12 小时前
请求进门先安检:Spring 拦截器与统一功能实战指南
java·开发语言·后端·学习·spring