java_io学习_编码

package io;

public class encodingDemo{

public static void main(String[] args) throws Exception{
// TODO Auto-generated method stub
String s="李雪涛ja";//转换成字节序列用的是项目默认编码
byte[] byte1=s.getBytes();
for(byte b:byte1)
//把字节(转换成了int)以16进制显示
System.out.print(Integer.toHexString(b&0xff)+" ");
System.out.println();
byte[] byte2=s.getBytes("gbk");
//gbk编码英文占1个字节,中文占2个字节
for(byte b:byte2){
System.out.print(Integer.toHexString(b&0xff)+" ");
}
System.out.println();
byte[] byte3=s.getBytes("utf-8");
//utf-8中中文占3个字节,英文占1个字节
for(byte b:byte3)
System.out.print(Integer.toHexString(b&0xff)+" ");
//java是双字节utf-16
byte[] byte4=s.getBytes("utf-16be");
for(byte b:byte4)
System.out.print(Integer.toHexString(b&0xff)+" ");
System.out.println();
/*
* 当你的字节序列是某种编码是,这个时候想把字节序列变为
* 字符串也需要用这种编码方式,否则会乱码
* */
String str1=new String(byte4);
System.out.println(str1);
String str2=new String(byte4,"utf-16be");
System.out.println(str2);
/*
* 文本文件 就是字节序列
* 可以试任意编码的字节序列
* 如果我们在中文机器上直接创建文本文件,那么该文本文件只认识ansi编码
*/
}

}

输出:

c0 ee d1 a9 cc ce 6a 61
c0 ee d1 a9 cc ce 6a 61
e6 9d 8e e9 9b aa e6 b6 9b 6a 61 67 4e 96 ea 6d 9b 0 6a 0 61
gN栮m? j a

李雪涛ja

时间: 2024-10-26 11:32:56

java_io学习_编码的相关文章

压缩跟踪(CT)代码详细学习_模块1(样本的采集和扩充)

本章主要详解的是compressive tracking框架中的第一部分:样本的采集和扩充部分. 在开始代码学习的前面,你需要知道的理论知识参见论文:Real-time Compressive Tracking.理论理解可以参见我的博客:http://blog.csdn.net/ikerpeng/article/details/19826409 . 这个模块中你需要知道一个基本的概念:代码里面几个变量指的是什么.上一张图: 也许你现在还不知道他们是什么,直接贴代码了.相信有我的注释你一定会懂的.

SQL学习_查询重复数据和连接多个表数据的方法

进行数据库测试时需要根据不同场景查询数据,以便验证发现的问题是否为脏数据引起的.记录一下最近常用的查询方法: 1. 查询表中重复数据(id不同,多个字段值相同) select P1.* from project as P1, project as P2 where P1.id<>P2.id and P1.ProjectId=P2.ProjectId and P1.ServiceTypeId=P2.ServiceTypeId and P1.Rank=P2.Rank 2.连接多个表数据 selec

Python学习_列表解析和Lambda表达式

1.根据要求创建列表threes_and_fives(列表值包括1到15中能够被3或者5正常的数) threes_and_fives=[x for x in range(1,16) if x%3==0 or x%5==0] 2.lambda表达式实例(剔除掉列表中的"X") garbled = "IXXX aXXmX aXXXnXoXXXXXtXhXeXXXXrX sXXXXeXcXXXrXeXt mXXeXsXXXsXaXXXXXXgXeX!XX" message

压缩跟踪(CT)代码详细学习_模块2(特征的提取和计算)

0.下载安装Opencv,当前版本为249. 1.下载Python,当前OPencv版本为249,不过其支持的最新版本的Python为2.7,所以可以下载276版本. 2.下载numpy,开始我使用了1.6,没有通过,错误如图.下载了最新的1.8.1版本. 3.将Opencv安装目录下opencv\build\python\2.7\x86中的cv2.pyd复制到python安装目录Lib\site-packages下. 4.找到opencv源文件内的draw.py运行. 压缩跟踪(CT)代码详细

LR基础学习_脚本信息函数

LR基础学习_脚本信息函数 Action() { //脚本信息函数. //lr_whoami:返回Vuser的ID,组名称,场景ID信息. /* int id,scid; char *vuser_group; lr_whoami(&id,&vuser_group,&scid); lr_error_message("Group:%s,vuser id:%d,scenario id %d",vuser_group,id,scid); */ //lr_get_host

C语言学习_排序_插入排序

1.插入排序 #include <stdio.h> #include <stdlib.h> #define M 100 int main(void) { int i, j, n; int a[M] = {0}; printf("input n:"); scanf("%d", &n); printf("input a:"); for(i = 1; i <= n; i++) //从a[1]开始,也就是第二个数 s

CSS学习_属性选择器

CSS选择器参考 [attribute]--选取带有指定属性的元素: [attribute=value]--选取带有指定属性和值的元素: [attribute~=value]--选取属性值中包含指定词汇的元素: [attribute|=value]--选取带有以指定值开头的属性值的元素,该值必须是整个单词: [attribute^=value]--匹配属性值以指定值开头的每个的元素: [attribute$=value]--匹配属性值以指定值结尾的每个的元素: [attribute*=value

C语言学习_三分查找

三分查找: #include <stdio.h> #define M 10 int main(void) { int front, near, mid1, mid2; int n; int found; int a[M] = {1, 2, 3, 4, 5, 6, 7, 8, 9}; front = 0; near = M - 1; found = 0; printf("input n:"); scanf("%d", &n); while(fron

STL学习_配接器篇

STL学习_配接器篇 定义 配接器(Adapter)在STL组件的灵活组合运用功能上,扮演着轴承.转换器的角色.它事实上是一种设计模式.即将一个class的接口转换为另一个class的接口,使原本因接口不兼容而不能合作的classes,可以一起运作. 分类 STL所提供的各种适配器中,改变仿函数(functors)接口者,称为function adapter:改变容器(containers)接口者,称为container adapter:改变迭代器(iterators)接口者,称为iterato