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

2024-03-01 07:20

本文主要是介绍常见的编码格式包括 UTF-8、ASCII、ISO-8859-1、GBK转换方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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

  • Python 示例
  • Ruby 示例
  • Java 示例
  • Go 示例

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 示例

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 示例

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 示例

package mainimport ("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.Readerif 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)
}

这篇关于常见的编码格式包括 UTF-8、ASCII、ISO-8859-1、GBK转换方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/761623

相关文章

C++ | Leetcode C++题解之第393题UTF-8编码验证

题目: 题解: class Solution {public:static const int MASK1 = 1 << 7;static const int MASK2 = (1 << 7) + (1 << 6);bool isValid(int num) {return (num & MASK2) == MASK1;}int getBytes(int num) {if ((num &

数据治理框架-ISO数据治理标准

引言 "数据治理"并不是一个新的概念,国内外有很多组织专注于数据治理理论和实践的研究。目前国际上,主要的数据治理框架有ISO数据治理标准、GDI数据治理框架、DAMA数据治理管理框架等。 ISO数据治理标准 改标准阐述了数据治理的标准、基本原则和数据治理模型,是一套完整的数据治理方法论。 ISO/IEC 38505标准的数据治理方法论的核心内容如下: 数据治理的目标:促进组织高效、合理地

C语言 | Leetcode C语言题解之第393题UTF-8编码验证

题目: 题解: static const int MASK1 = 1 << 7;static const int MASK2 = (1 << 7) + (1 << 6);bool isValid(int num) {return (num & MASK2) == MASK1;}int getBytes(int num) {if ((num & MASK1) == 0) {return

easyui同时验证账户格式和ajax是否存在

accountName: {validator: function (value, param) {if (!/^[a-zA-Z][a-zA-Z0-9_]{3,15}$/i.test(value)) {$.fn.validatebox.defaults.rules.accountName.message = '账户名称不合法(字母开头,允许4-16字节,允许字母数字下划线)';return fal

form表单提交编码的问题

浏览器在form提交后,会生成一个HTTP的头部信息"content-type",标准规定其形式为Content-type: application/x-www-form-urlencoded; charset=UTF-8        那么我们如果需要修改编码,不使用默认的,那么可以如下这样操作修改编码,来满足需求: hmtl代码:   <meta http-equiv="Conte

JVM 常见异常及内存诊断

栈内存溢出 栈内存大小设置:-Xss size 默认除了window以外的所有操作系统默认情况大小为 1MB,window 的默认大小依赖于虚拟机内存。 栈帧过多导致栈内存溢出 下述示例代码,由于递归深度没有限制且没有设置出口,每次方法的调用都会产生一个栈帧导致了创建的栈帧过多,而导致内存溢出(StackOverflowError)。 示例代码: 运行结果: 栈帧过大导致栈内存

模拟实现vector中的常见接口

insert void insert(iterator pos, const T& x){if (_finish == _endofstorage){int n = pos - _start;size_t newcapacity = capacity() == 0 ? 2 : capacity() * 2;reserve(newcapacity);pos = _start + n;//防止迭代

[数据集][目标检测]血细胞检测数据集VOC+YOLO格式2757张4类别

数据集格式:Pascal VOC格式+YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):2757 标注数量(xml文件个数):2757 标注数量(txt文件个数):2757 标注类别数:4 标注类别名称:["Platelets","RBC","WBC","sickle cell"] 每个类别标注的框数:

一步一步将PlantUML类图导出为自定义格式的XMI文件

一步一步将PlantUML类图导出为自定义格式的XMI文件 说明: 首次发表日期:2024-09-08PlantUML官网: https://plantuml.com/zh/PlantUML命令行文档: https://plantuml.com/zh/command-line#6a26f548831e6a8cPlantUML XMI文档: https://plantuml.com/zh/xmi

【Kubernetes】常见面试题汇总(三)

目录 9.简述 Kubernetes 的缺点或当前的不足之处? 10.简述 Kubernetes 相关基础概念? 9.简述 Kubernetes 的缺点或当前的不足之处? Kubernetes 当前存在的缺点(不足)如下: ① 安装过程和配置相对困难复杂; ② 管理服务相对繁琐; ③ 运行和编译需要很多时间; ④ 它比其他替代品更昂贵; ⑤ 对于简单的应用程序来说,可能不