c#客户端和 JAVA通讯问题

huruihappy 2009-02-02 11:38:46
以前用JAVA写了个客户端,现在要改成C#版本。服务端是用JAVA写的,在转换过程中遇到点问题还望大家指教下。
JAVA代码:

conn=(HttpConnection)Connector.open(URL);

dos = conn.openDataOutputStream();

dos.writeInt(2);//给服务端输出2标志符 表示登陆

dos.writeUTF(userID);//输出ID

dos.writeUTF(userPwd); //输出PASSWORD给服务端

dos.writeUTF("");

dos.writeUTF("");

dos.flush();

dos.close();

dis = conn.openDataInputStream();

result = dis.readUTF();

这段代码怎么改成C#的 翻阅了下MSDN 发现webrequest里面只有Stream 并不存在 writeUTF和readUTF
怎么改?
...全文
247 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
blood 2012-03-27
  • 打赏
  • 举报
回复
支持啊。我也在找解决办法
huruihappy 2009-02-03
  • 打赏
  • 举报
回复
write 的改了但是服务端读不到阿··
read用的是将进来的流 先转换成byte[] 再从byte[]里面4个字节读取int StreamReader sr = new StreamReader(dis, Encoding.UTF8); 读取字符串。
但是write发出去的服务端收不到
宝_爸 2009-02-03
  • 打赏
  • 举报
回复
read咋搞定的,write按照相同的方式搞定。
readfuture 2009-02-03
  • 打赏
  • 举报
回复
不会,关注
huruihappy 2009-02-02
  • 打赏
  • 举报
回复
writeUTF 和 writeInt 怎么解决 read搞定鸟 谢谢楼上提醒
cpio 2009-02-02
  • 打赏
  • 举报
回复
readInt其实就是读4个字节出来,然后转成整数就行了
huruihappy 2009-02-02
  • 打赏
  • 举报
回复
但是不想改服务端 要不改动就太大了 服务端用的是 readUTF() 和 readInt() .
原本想用WEBSERVICE写的 但是没那么多时间,只想尽快改版客户端端
cpio 2009-02-02
  • 打赏
  • 举报
回复
C#是对Stream进行操作

如果是字符串,可以通过Encoding.UTF8.GetBytes(string);把字符串转成byte[]数组,然后写入到Stream中

读取的时候通过Encoding.UTF8.GetString,把数组转成字符串

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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