VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
12
返回列表 发新帖
楼主: rogue110

rms存储如何存储int数组数据

[复制链接]

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-7-28 10:15:01 | 显示全部楼层
ByteArrayOutputStream baops = new ByteArrayOutputStream();
DataOutputStream outputStream = new DataOutputStream(baops);
outputStream.writeInt();
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-8-7 21:00:01 | 显示全部楼层
        public static byte[] int2Byte(int n) {
                return new byte[] { (byte) ((n >> 24) & 0xff),
                                (byte) ((n >> 16) & 0xff), (byte) ((n >> 8) & 0xff),
                                (byte) (n & 0xff) };

        }
回复

使用道具 举报

0

主题

2

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-8-8 09:45:01 | 显示全部楼层
有2种方法.
1.先对int进行编码
  ByteArrrayOutputStream baos = new ByteArrayOutputStream();
  DataOutputStream dos = new DataOutputStream();
  dos.writeInt(i);//i就是你的整型数据

  byte[] result = null;
  result = baos.toByteArray();

  用的时候解码:
  ByteArrayInputStream bais = new ByteArrayInputStream();
  DataInputStream dis = new DataInputStream();
  
  int i = dis.readInt();

2.
  byte[] b = new byte[4];(Int是32位)
  b[0] = (byte)(0xff & (i >> 24));
  b[1] = (byte)(0xff & (i >> 16));
  b[2] = (byte)(0xff & (i >> 8));
  b[3] = (byte)(0xff & (i >> 0));

回复

使用道具 举报

0

主题

23

帖子

17.00

积分

新手上路

Rank: 1

积分
17.00
发表于 2020-8-8 12:15:01 | 显示全部楼层
看你们这么多,还是String最简单啊!
public void save(int n)
{
String s=new String(""+n);   //整型变为字符串.
rs.write(s.getBytes(),0,s.length);  //假设rs为你的Record对象
}
public int get(int position)
{
byte[] temp=rs.getRecord(position);
return Integer.parseInt(new String(temp));
}
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-8-8 14:00:01 | 显示全部楼层
最好不建议使用string,如果你存的既有int又有short又有string又有byte[],岂不麻烦...
回复

使用道具 举报

0

主题

2

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-8-12 01:45:01 | 显示全部楼层
byte[] result = null;
  result = baos.toByteArray();
有什么用呢?
回复

使用道具 举报

0

主题

2

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-8-12 02:00:01 | 显示全部楼层
int i = dis.readInt();
dos.writeInt(i);
这两个I是否一样呢?
回复

使用道具 举报

0

主题

2

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-8-12 12:30:01 | 显示全部楼层
int i = dis.readInt();
dos.writeInt(i);
这两个I是否一样呢?

====================================
====================================

一样的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表