如何验证一个string是不是unicode string

刚才看到一个问题,

"如何验证一个string是不是unicode string"。

开始看这题,懵了,这可怎么做。因为在我的印象中,java的字符数据类型是用UTF-16编码方式表示的。

等于说就是直接就是Unicode字符串,跟本不用判断啊。

所以我感觉这个题目可能不是这个意思.....琢磨了一下,这个题目应该是在问一个string用的原始字符集是不是Unicode(Unicode也有很多编码规则的,比如UTF-8啊,UTF-16啊之类的)。字符集也有很多种的,比如常见的ASCII啊,GB2312之类的。

这样的话,我就能理解这个问题了。。。。。不过新问题又来了,UTF-8是兼容ASCII的,那我们如何分辨他们两呢?

在这儿我感觉只能遍历字符串,获取二进制,然后判断了,如果有哪个字符超过一个字节,那就是UTF-8编码了...

谁有更好的方法,欢迎提供。

如何验证一个string是不是unicode string

时间: 2024-11-25 20:32:45

如何验证一个string是不是unicode string的相关文章

乱码问题引申 python 中string和unicode

HtmlTestRunner的乱码问题 1生成的报告中,对print打印的数据都记录下来,但是数据有些会存在乱码.如下面.有些又没有乱码. 这到底是怎么回事呢? str=t.encode('utf-8') print str 第一个test我以utf-8编码,看来htmlTestRunner不是utf-8 编码. 为何第二个正确了呢? 第二个是unicode编码方式. 也就是说,可以被其他任何encode了. 原码中已这个进行编码,也就是说他设置为latin-1这种编码方式了.估计是作者自己国家

【原创】利用typeface实现不同字体的调用显示及String转换为Unicode

最近工作用到,就写个小demo demo实现从assets中利用typeface调用不同字体,并在editText中显示出来 1.layout中创建activity_main.xml文件 布局代码如下: 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 andr

1——自我实现一个简洁版的String类

在C++中有C没有的string字符串类型,string类型的数据其实是一个指向字符串首地址的指针变量,因此在string类的默认成员函数拷贝构造和赋值运算符的重载就会涉及到深浅拷贝的问题,一不小心要么就是内存泄露要么就是多次释放同一块空间导致程序崩溃,下面就来模拟实现一个简洁版的String类: 既然是指向一个字符串的指针,因此类的成员变量就需要有一个char*类型的指针: #include <iostream> #include <string.h> using namespa

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

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

【c语言】编写一个函数reverse_string(char * string)(递归实现) 实现:将参数字符串中的字符反向排列。

/*编写一个函数reverse_string(char * string)(递归实现) 实现:将参数字符串中的字符反向排列. 要求:不能使用C函数库中的字符串操作函数.*/ #include <stdio.h> #include <assert.h> void reverse_string(char const * string) { assert( string != NULL ); if( *string != '\0' ) { string++; reverse_string

unicode string和ansi string的转换函数及获取程序运行路径的代码

#pragma once#include <string> namespace stds { class tool { public: std::string ws2s(const std::wstring& ws) { std::string curLocale = setlocale(LC_ALL, NULL); // curLocale = "C"; setlocale(LC_ALL, "chs"); const wchar_t* _Sou

编写一个函数reverse_string(char * string)(递归实现)

编写一个函数reverse_string(char * string)(递归实现) 实现:将参数字符串中的字符反向排列. 要求:不能使用C函数库中的字符串操作函数. #include<stdio.h> #include<assert.h> #include<stdlib.h> int my_strlen(const char*str) { assert(str); int count = 0; while (*str) { count++; str++; } retur

服务器返回一个无效的JSON string,处理

使用AFN,服务端返回的结果看看哪里错了. 因为后台返回的不是一个有效的JSON string 所以库里面转化的时候一个error就抛出了.所以这时候,就自己做解析好了. NSLog ( @"operation: %@" , operation. responseString );

【C语言】编写一个函数reverse_string(char * string)(递归实现),将参数字符串中的字符反向排列,不能使用C函数库中的字符串操作函数。

//编写一个函数reverse_string(char * string)(递归实现) //实现:将参数字符串中的字符反向排列. //要求:不能使用C函数库中的字符串操作函数. #include <stdio.h> #include <assert.h> void reverse_string(char const * string) { assert( string != NULL ); if( *string != '\0' ) { string++; reverse_stri