导航:首页 > 编程语言 > char数组转byte数组java

char数组转byte数组java

发布时间:2022-11-25 02:13:51

java中如何将字符串转换成字节数组

* UTF-8 一个汉字占三个字节*/private static String CHAR_ENCODE = "UTF-8";/*** 设置全局的字符编码 * @param charEncode*/public static void configCharEncode(String charEncode){ CHAR_ENCODE = charEncode;}/*** @param str 源字符串转换成字节数组的字符串* @return*/public static byte[] StringToByte(String str) { return StringToByte(str,CHAR_ENCODE);}/**** @param srcObj 源字节数组转换成String的字节数组* @return*/public static String ByteToString(byte[] srcObj) { return ByteToString(srcObj,CHAR_ENCODE);}/*** UTF-8 一个汉字占三个字节 * @param str 源字符串 * 转换成字节数组的字符串* @return*/public static byte[] StringToByte(String str,String charEncode) { byte[] destObj = null;try {if(null == str || str.trim().equals("")){ destObj = new byte[0];

⑵ 在C++里怎么把char数组转换成byte数组

char和byte都是8位。char默认是signed还是unsigned看编译器,一般是signed也就是有符号char类型,范围为0-127.它的最高位是不用的,为0.
byte范围0-255,。所以char转byte直接强制类型转换就可以,不会丢失数据

⑶ 在java里,char,int,byte之间的关系还有他们之间的转换

无任何关系 char 是字符 int 是数字 byte 是字节数据 char 和 int 可以相互转换(按照ascii码数值) byte 虽然也可以转换,但是无意义

采纳哦

⑷ 在java中如何将全为数字的字符串转化为byte数组

public class DigitsString{
public static void main(String[] args){
String s="99999";
byte[] bytes=s.getBytes();
for(int i=bytes.length-1;i>=0;i--){
bytes[i]-=(byte)'0';
}
for(int i=0;i<bytes.length;i++){
System.out.print(bytes[i]);
}
System.out.println();
}
}
一楼二楼的字节数组中元素的值不是对应数位的值,是数位的ASCII码,根本不符合题意

⑸ java char,byte移位操作时的类型转换。

int类型数据4字节32位
int 数据 >> 数值右端
所以数值右端范围是(0-31)00000-11111
所有只有右端数值的低5位有用
例子
int类型数据3(0.....0011)
3 >> 33 表示 3右移33位(100001)
但是3是int类型,只有32位,右移数值只有低5位有用
3 >> 33 相当于 3 >> 1 结果是 1

⑹ Java中怎么把一个中文字符char转换成byte

1、中文一个字是两个char,即是String类型。
2、String只能转为byte[]数组,方法是调用其getBytes()方法。

⑺ java里面的char和byte怎么转换

java中,char转化为byte的话,可以用参考如下方法:
String s=new String("1");
byte[] b=new byte[1];
b[0] = Byte.parseByte(""+s.charAt(0));
System.out.println(b[0]);
结果为:1,而不是ascii码的值了。

⑻ java中如何将字符串转化成特定长度的字节数组

publicclassTest{
publicstaticvoidmain(String[]args){
byte[]byteArray="Test".getBytes();
byte[]byteArray2="测试".getBytes();
System.out.println("byteArray.length="+byteArray.length);
System.out.println("byteArray2.length="+byteArray2.length);

for(inti=0;i<byteArray.length;i++)
System.out.print((char)byteArray[i]);
System.out.println();
for(inti=0;i<byteArray2.length;i++)
System.out.print((char)byteArray2[i]);
}
}

汉字2个字节编码,1个汉字转换成2bytes

⑼ java 中,char 数组转换成 byte数组(急,在线等)

package com.example.lib;
import java.io.FileInputStream;
import java.io.IOException;
import java.nio.ByteBuffer;
import java.nio.*;
import java.nio.charset.Charset;

public class MyClass {
public static void main(String[] args) throws IOException {
FileInputStream fs; //定义流对象变量
fs = new FileInputStream("/Users/mac/AndroidStudioProjects/MyApplication/lib/src/main/java/com/example/lib/mytext.txt");
byte[] bytes = new byte[fs.available()]; //定义接收数据的字节数组,并用流对象初始化数组大小
fs.read(bytes); //装载数据
char[] w = getChars(bytes);//将字节数组转化为字符数组,注意数组末尾会有空字符
String s = new String(w); //利用字符串构造函数来构造字符串,
System.out.println("结果为:"+s.trim());输出时,去掉末尾空格字符
}

private static byte[] getBytes (char[] chars) {
Charset cs = Charset.forName ("UTF-8");//设定字符集编码代号
CharBuffer cb = CharBuffer.allocate (chars.length);//按照字符数组长度进行分配空间
cb.put (chars); //装载数据
cb.flip (); //指针复位
//按照编码规则进行编码
ByteBuffer bb = cs.encode (cb);
return bb.array();
}

private static char[] getChars (byte[] bytes) {
Charset cs = Charset.forName ("UTF-8");//指定字符集编码
ByteBuffer bb = ByteBuffer.allocate (bytes.length);
bb.put (bytes);//装载数据
bb.flip ();//调整回指针为0
CharBuffer cb = cs.decode (bb);//按照指定字符集进行解码
return cb.array();//返回字符数组
}
}

阅读全文

与char数组转byte数组java相关的资料

热点内容
linux实用命令 浏览:236
传奇引擎修改在线时间命令 浏览:107
php取域名中间 浏览:896
cad命令栏太小 浏览:830
php开发环境搭建eclipse 浏览:480
qt文件夹名称大全 浏览:212
金山云服务器架构 浏览:230
安卓系统笔记本怎么切换系统 浏览:618
u盘加密快2个小时还没有搞完 浏览:93
小米有品商家版app叫什么 浏览:94
行命令调用 浏览:436
菜鸟裹裹员用什么app 浏览:273
穷查理宝典pdf下载 浏览:514
csgo您已被禁用此服务器怎么办 浏览:398
打开加密软件的方法 浏览:156
云存储服务器可靠吗 浏览:967
2核1g的云服务器能带动游戏嘛 浏览:898
逆命20解压码 浏览:146
徐州办犬证需要下载什么app 浏览:1002
百保盾是什么样的app 浏览:699