JAVA结构问题

fenglianghuai 2007-11-22 01:47:54
我刚了解JAVA ,不清楚怎样将VC++中如下结构保持到文件("C:\\test.a")和怎样从文件("C:\\test.a")读信息到到结构

typedef struct _CHNINFO
{
int nIndex;
int nSubIndex;
char data[100];
}CHNINFO;
...全文
107 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
fenglianghuai 2007-11-22
  • 打赏
  • 举报
回复
谢谢
我一直在用VC++写程序,对JAVA刚了解了一些
piaopiao11 2007-11-22
  • 打赏
  • 举报
回复
你需要实现CHNINFO的生成字节的方法,然后用java的socket发出去。
在java中流的操作都是用InputStream,OutputStream;
没有你的那个操作方法。
另外生成字节时可能要考虑数据包长度问题,你的数据包没有附带长度信息(估计是定长的),那么送过去的数据的长度应该在生成字节时控制好,否则接收时会出问题。
joejoe1991 2007-11-22
  • 打赏
  • 举报
回复
java里面貌似没有结构这一说哇。。。
fenglianghuai 2007-11-22
  • 打赏
  • 举报
回复
谢谢
我的目的想通过JAVA Socket传送一个结构到VC写的Socket服务端
请问能不能象VC++那样用

CHNINFO ChnInfo;
send(s,(char *)ChnInfo,sizeof(ChnInfo),WSAEFAULT )?
joejoe1991 2007-11-22
  • 打赏
  • 举报
回复
除了楼上写的用DataInputStream读取文件里的数据库 还可以用ObjectInputStream 不过同时还要用到ObjectOutputStream
piaopiao11 2007-11-22
  • 打赏
  • 举报
回复
class CHNINFO{
int nIndex,nSubIndex;
byte[] data;
public byte[] getData() {
return data;
}
public void setData(byte[] data) {
this.data = data;
}
public int getNIndex() {
return nIndex;
}
public void setNIndex(int index) {
nIndex = index;
}
public int getNSubIndex() {
return nSubIndex;
}
public void setNSubIndex(int subIndex) {
nSubIndex = subIndex;
}

}
piaopiao11 2007-11-22
  • 打赏
  • 举报
回复
InputStream is=new FileInputStream("C:\\1.txt");
DataInputStream dis=new DataInputStream(is);
ArrayList al=new ArrayList();
while(true){

if(dis.available()==0)break;

int nIndex =dis.readInt();
int nSubIndex=dis.readInt();
byte[] b= new byte[100];
dis.read(b);

CHNINFO chninfo=new CHNINFO();
chninfo.setNIndex(nIndex);
chninfo.setNSubIndex(nSubIndex);
chninfo.setData(b);
al.add(chninfo);
}

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧