Unicode字符串和非Unicode字符串

什么是Unicode?

Unicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。

字符串?

字符串或串(String)是由数字、字母、下划线组成的一串字符。一般记为 s=“a1a2···an”(n>=0)。它是编程语言中表示文本的数据类型。在程序设计中,字符串(string)为符号或数值的一个连续序列,如符号串(一串字符)或二进制数字串(一串二进制数字)。

UTF-8

UTF-8(8-bit Unicode Transformation Format)是一种针对Unicode的可变长度字符编码,又称万国码,由Ken Thompson于1992年创建。现在已经标准化为RFC 3629。UTF-8用1到6个字节编码Unicode字符。用在网页上可以统一页面显示中文简体繁体及其它语言(如英文,日文,韩文)。

当我们弄清楚已上三种的的区别,相信很多人应该都懂了Unicode字符串和非Unicode字符串的区别吧!

最通俗的讲Unicode字符串和就是将普通字符串给标准化了,它为 每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。

通过以下Python代码,希望大家能理解:

# -*- coding: utf-8 -*-
#!/usr/bin/env python
# @Time    : 2018/7/3 10:03
# @Desc    :
# @File    : test.py
# @Software: PyCharm

if __name__ == ‘__main__‘:
    #定义一般字符串
    str="代码帮"
    #字符串前面加u,定义标准unicode字符串
    unicodestr=u"代码帮"
    #将一般字符串转化为标准unicode字符串
    unicodestrs = unicode(str, "utf-8")
    print str
    print unicodestr
    print unicodestrs

    print type(str)
    print type(unicodestr)
    print type(unicodestrs)

?

原文地址:https://www.cnblogs.com/IT-LearnHall/p/9426367.html

时间: 2024-10-07 02:03:01

Unicode字符串和非Unicode字符串的相关文章

Python中Unicode码和非Unicode码引起的错误与格式转换

1.1. 问题 Problem You need to deal with data that doesn't fit in the ASCII character set. 你需要处理不适合用ASCII字符集表示的数据. 1.2. 解决 Solution Unicode strings can be encoded in plain strings in a variety of ways, according to whichever encoding you choose: Unicode

SQL 中 unicode字符和非unicode字符的区别

unicode字符就是一些标准的字符,例如英文.数字,不支持汉字. 非unicode是包含汉字和一些特殊字符 nvarchar支持汉字,但是每一个字符占用两个字节比如有这样的字段:[Name] [nvarchar](50) 我们插入“小明”这个记录,只有两个字实际占用4个字节.我们插入“xiaoming”8个英文字符,实际占用16个字节.而[Name] [nvarchar](50) 字段中我们插入“xiaoming”实际只占用8个字节 如果是unicode是可以用varchar非unicode用

Swift学习笔记-字符串和字符(Strings and Characters)-字符串的 Unicode 表示形式(Unicode Representations of Strings)

当一个 Unicode 字符串被写进文本文件或者其他储存时,字符串中的 Unicode 标量会用 Unicode 定义的几种编码格式编码.每一个字符串中的小块编码都被称为代码单元.这些包括 UTF-8 编码格式(编码字符串为8位的代码单元), UTF-16 编码格式(编码字符串位16位的代码单元),以及 UTF-32 编码格式(编码字符串32位的代码单元). Swift 提供了几种不同的方式来访问字符串的 Unicode 表示形式. 您可以利用for-in来对字符串进行遍历,从而以 Unicod

js字符串编码和unicode编码互转

//字符串编码转为unicode编码function charToUnicode(str) { let temp; let i = 0; let r = ''; let len = str.length; for (; i < len; i++) { temp = str.charCodeAt(i).toString(16); while ( temp.length < 4 ) temp = '0' + temp; r += '\\u' + temp; }; return r; } //uni

VC2008以资源形式实现多语言版本(非Unicode) .转

http://blog.csdn.net/jiht594/article/details/7043520对比,本文使用了SetThreadLocale. 越来越多的程序支持多语言切换,或者能自动适应当前系统语言,让自己开发的程序支持多语言不仅可以让自己的程序被国人使用,也能让外国程序爱好者使用.VC开发多语言程序有多种方法,或读取配置文件,或使用不同资源DLL等等.这里介绍以资源形式实现多语言版本. 1.打开Visual Studio 2008,新建一个基于对话框工程,名称为LanguageTe

SpringMVC返回json字符串(非注解方式)

这里采用的是非注解形式,相当于注解中的@responseBody /**      * 根据字符串输出JSON,返回null      *       * @param jsonString      * @return      */     public String ajaxJson(HttpServletResponse response,String jsonString) {        return ajax(response,jsonString, "text/html&quo

CString和string在unicode与非unicode下的相互转换(转)

原文转自 http://blog.csdn.net/u014303844/article/details/51397556 CString和string在unicode与非unicode下的相互转换 最近想写一个手机控制电脑的玩具,涉及到了socket通信,数据采用json通用格式,首先是jsoncpp的编译问题太烦了,然后还有更烦的,java中的String多容易的玩意儿,然后到了c/c++/mfc中超级烦,搜索了很久的攻略,用了大把的时间,最后写了个这玩意儿出来,或许可以帮助到一些需要此的道

自定义StringBuilder类拼接非空字符串

主要目的: 为了拼接多个非空字符串,还能达到链式的装X效果这里不考虑线程安全,所以使用StringBuilder快速拼接非空内容,中间用","作为分隔. 代码如下: package com.baidu;import org.apache.commons.lang.StringUtils;import org.junit.Test; public class MyStringBuilder { private StringBuilder sb; private Thread thread

Python中的raw字符串和多行字符串

1.raw字符串(原始字符串) 如果一个字符串包含很多需要转义的字符,对每一个字符都进行转义会很麻烦.为了避免这种情况, 我们可以在字符串前面加个前缀r,表示这是一个 raw 字符串,里面的字符就不需要转义了.例如: r'\(^_^)/ \(~_~)/' raw字符串表示原始字符串,我对于原始的理解就是:你看到这个字符串是什么就显示什么,去掉 所有字符都不进行转义,该显示啥就是啥. 2.多行显示 Python中除了可以使用单引号' '.双引号" "表示一个字符串,还可以使用三引号来表示