您的位置:首页 > 编程语言 > Java开发

Java中如何创建指定大小字节数的字符串

2016-11-17 13:10 155 查看
Java中如何创建指定大小字节数的字符串

如:想创建一个固定长度为12个字节的字符串如何创建呢.谢谢

更多

0

分享到:

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理

回复次数:14

qybao

    关注

    qybao

    qybao

    本版等级:T9

    Blank Blank

    

#1 得分:0 回复于: 2011-08-25 16:17:42

这个没法控制,自己判断字节数吧,或者字节写个字符串类

如果想创建12个字节的,空白字符串,可以用new String(byte[])构造函数

for example

byte[] b = new byte[12];

Arrays.fill(b, (byte)0x32);

String s = new String(b);

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理

selly0919

    关注

    selly0919

    selly0919

    本版等级:T2

    

#2 得分:0 回复于: 2011-08-25 16:18:37

想实现什么样的功能呢?

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理

yangting_lisa

    关注

    yangting_lisa

    小笨熊

    本版等级:T5

    

#3 得分:0 回复于: 2011-08-25 16:21:15

引用楼主 heqian0317 的回复:

    Java中如何创建指定大小字节数的字符串

    如:想创建一个固定长度为12个字节的字符串如何创建呢.谢谢

lz的字符串是指字符串数组?简单的一个String?

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理

zhaolewen

    关注

    zhaolewen

    zhaolewen

    本版等级:T2

    

#4 得分:0 回复于: 2011-08-25 16:25:35

java中提供有构造方法,String(byte[] bytes, Charset charset) ,用特定的字符集把字节数组解码成string字符串,在创建字节数组时只要保证为12个字节就行,但转换成的字符串不一定等于字节数组的长度

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理

heqian0317

    关注

    heqian0317

    heqian0317

    本版等级:T1

    

#5 得分:0 回复于: 2011-08-25 16:30:29

引用 3 楼 yangting_lisa 的回复:

    引用楼主 heqian0317 的回复:

    Java中如何创建指定大小字节数的字符串

    如:想创建一个固定长度为12个字节的字符串如何创建呢.谢谢

    lz的字符串是指字符串数组?简单的一个String?

我想直接创建这么多字节的字符串,当实际内容没这么时,里面的内容二进制补充为0

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理

qybao

    关注

    qybao

    qybao

    本版等级:T9

    Blank Blank

    

#6 得分:0 回复于: 2011-08-25 17:00:46

引用 5 楼 heqian0317 的回复:

    引用 3 楼 yangting_lisa 的回复:

    引用楼主 heqian0317 的回复:

    Java中如何创建指定大小字节数的字符串

    如:想创建一个固定长度为12个字节的字符串如何创建呢.谢谢

    lz的字符串是指字符串数组?简单的一个String?

    我想直接创建这么多字节的字符串,当实际内容没这么时,里面的内容二进制补充为0

for example

byte[] b = new byte[12];

Arrays.fill(b, (byte)0); //二进制0

String s = new String(b);

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理

heqian0317

    关注

    heqian0317

    heqian0317

    本版等级:T1

    

#7 得分:0 回复于: 2011-08-25 18:05:14

byte 不是一个字节的吗.我通过

byte[] b = new byte[12];String s = new String(b); outs.writeChars(s);

文件大小怎么是24个字节的呢

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理

luohuijun619

    关注

    luohuijun619

    luohuijun619

    本版等级:T6

    Blank

    

#8 得分:0 回复于: 2011-08-25 22:22:52

指定大小?用List不是更好吗

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理

heqian0317

    关注

    heqian0317

    heqian0317

    本版等级:T1

    

#9 得分:0 回复于: 2011-08-26 17:46:13

引用 6 楼 qybao 的回复:

    引用 5 楼 heqian0317 的回复:

    引用 3 楼 yangting_lisa 的回复:

    引用楼主 heqian0317 的回复:

    Java中如何创建指定大小字节数的字符串

    如:想创建一个固定长度为12个字节的字符串如何创建呢.谢谢

    lz的字符串是指字符串数组?简单的一个String?

    我想直接创建这么多字节的字符串,当实际内容没这么时,里面的内容二进制补充为0

    ……

这样好写在文件中是24字节的大小

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理

qybao

    关注

    qybao

    qybao

    本版等级:T9

    Blank Blank

    

#10 得分:0 回复于: 2011-08-26 19:38:13

outs.writeChars(s); 改成 outs.writeBytes(s);

按字节输出而不是按字符输出

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理

qybao

    关注

    qybao

    qybao

    本版等级:T9

    Blank Blank

    

#11 得分:30 回复于: 2011-08-26 19:40:16

javadoc里有说明

writeCharspublic final void writeChars(String s)

                      throws IOException将字符串按字符顺序写入基础输出流。通过 writeChar 方法将每个字符写入数据输出流。如果没有抛出异常,则计数器 written 增加 s 长度的两倍。

指定者:

接口 DataOutput 中的 writeChars

参数:

s - 要写入的 String 值。

抛出:

IOException - 如果发生 I/O 错误。

另请参见:

writeChar(int), FilterOutputStream.out

writeBytespublic final void writeBytes(String s)

                      throws IOException将字符串按字节顺序写出到基础输出流中。按顺序写出字符串中每个字符,丢弃其八个高位。如果没有抛出异常,则计数器 written 增加 s 的长度。

指定者:

接口 DataOutput 中的 writeBytes

参数:

s - 要写入的字节字符串。

抛出:

IOException - 如果发生 I/O 错误。

另请参见:

FilterOutputStream.out

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理

softroad

    关注

    softroad

    softroad

    本版等级:T7

    Blank

    

#12 得分:0 回复于: 2011-08-26 20:39:31

学习了。

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理

heqian0317

    关注

    heqian0317

    heqian0317

    本版等级:T1

    

#13 得分:0 回复于: 2011-08-29 09:47:07

谢谢噢.

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理

heqian0317

    关注

    heqian0317

    heqian0317

    本版等级:T1

    

#14 得分:0 回复于: 2011-08-29 10:40:11

引用 9 楼 heqian0317 的回复:

    引用 6 楼 qybao 的回复:

    引用 5 楼 heqian0317 的回复:

    引用 3 楼 yangting_lisa 的回复:

    引用楼主 heqian0317 的回复:

    Java中如何创建指定大小字节数的字符串

    如:想创建一个固定长度为12个字节的字符串如何创建呢.谢谢

    lz的字符串是指字符串数组?简单的一个String?

    我想直接创建这么多字节的字符串,当实际内容……

请问下又如何初始化我创建的数组里的内容呢.比如我一个手机号1371234567 想他输出的字节数占12个字节
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: