- 0
- 0
- 约2.88万字
- 约 16页
- 2019-11-17 发布于天津
- 举报
java和C#之间SOCKET通信的问题一、服务器端(使用java编写)/*** 监听客户端的请求**/private static void socketService(){ExecutorService exec = Executors.newCachedThreadPool();try{?? ServerSocket server=new ServerSocket(5678);?? int i = 1;?? while(true)?? {??? MyLogManager.InfoLog(log, null,等待连接第+i+个用户...);??? try??? {???? Socket client=server.accept();???? MyLogManager.InfoLog(log, null,第+i+个用户连接完成!);???? exec.execute(new PDAServerWithDB(client));??? }??? catch(Exception whileExp)??? {???? String msg = 多线程处理连接失败!;???? MyLogManager.ErrorLog(log, whileExp, msg);??? }??? i++;?? }}catch(IOException ioe){?? String msg = 连接失败!;?? MyLogManager.ErrorLog(log, ioe, msg);?? exec.shutdown();}}
具体对于Socket信息的接受和发送在PDAServerWithDB类中处理信息处理分为:接收数据和发送数据服务端接收数据一律采用ReadLine()方法,这就要求客户端在发送请求时要有行结束符。服务器的接收发送数据的代码a)。构造输入输出流InputStream inPut = s.getInputStream();OutputStream outPut = s.getOutputStream();PrintWriter outWriter=new PrintWriter(outPut);BufferedReader inputReader =new BufferedReader(new InputStreamReader(inPut));b。接收客户端请求的代码String request = inputReader.readLine();request = request.trim();request = request.replaceAll(\n, );c。向客户端发送文本数据的代码outWriter.println(strInfo);outWriter.flush();d)。向客户端发送文件的代码// 发送文件长度File file = new File(filePath);byte[] outBytes = new byte[1024];int count = 0;FileInputStream fileInput = new FileInputStream(file);??ByteArrayOutputStream ow = new ByteArrayOutputStream();??while ((count = fileInput.read(outBytes)) 0) {MyLogManager.DebugLog(log, null, String.valueOf(count));ow.write(outBytes, 0, count);}???outPut.write(ow.toByteArray());//outWriter.print(ow);//这个在JAVA客户端时可以正常响应,而在C#客户端中无法响应。//outWriter.flush();
二、客户端(使用java和c#两个版本)1).发送请求信息(字符串格式)对于JAVA来说:直接使用PrintWrite类的println()方法即可。而对于C#来说:需要使用socket.Send(System.Text.Encoding.ASCII.GetBytes(msg + \r));需要在请求信息msg后面加上一个行结束标志符。2).接收数据(文本或者文件)2-1).java客户端接收数据a)。java接收文本的代码示例:******代码示例*****(开始连接服务器);InetAddress address = InetAddress.getByName(AppConfig.IP);//43);Socke
您可能关注的文档
- 《C#课程设计报告》.doc
- 《C++编程题:生态系统》.doc
- 《c51单片机中断详解》.ppt
- 《C300实验配置文档》.doc
- 《CAN网络知识介绍》.ppt
- 《C14尿素氮呼气试验 - 副本》.ppt
- 《C5专练——异分母分数加减法》.doc
- 《C40P8 配合比计算书》.doc
- 《CAI课件制作教程8》.ppt
- 《CATIA 知识工程详细教程》.ppt
- 第2课时 表内除法问题提出(2) 课件 2026西师大版数学二年级下册.ppt
- 第2课时 倍的认识(2) 课件 2026西师大版数学二年级下册.ppt
- 第2课时 单式统计表 课件 2026冀教版数学三年级下册.ppt
- 第2课时 简单的逻辑推理 课件 2026冀教版数学三年级下册.ppt
- 第2课时 除法的初步认识(2) 课件 2026西师大版数学二年级下册.ppt
- 第2课时 分一分(2) 课件 2026西师大版数学二年级下册.ppt
- 第2课时 简单的排列组合 课件 2026冀教版数学二年级下册.ppt
- 高考英语二轮-英语作文之书信邮件类(复习讲义)(上海专用)(学生版).docx
- 高考英语二轮-阅读理解细节题、词义推测题(复习讲义)(上海专用)(学生版).docx
- 第2课时 进位加法 课件 2026冀教版数学三年级下册.ppt
最近下载
- 110kV变电站专项电气试验及调试方案.doc VIP
- 对外汉语考试试题及答案.docx VIP
- COUPLER微血管吻合器课件.pptx VIP
- GB 7594.1-1987 电线电缆橡皮绝缘和橡皮护套 第1部分一般规定-国家标准.pdf VIP
- 110kV送变电工程启动调试与试运行操作指南及案例解析.docx VIP
- 心衰合并肾功能不全的护理难点与解决方案.pptx VIP
- 关于2024年度民主生活会整改措施落实情况及2025年深入贯彻中央八项规定精神学习教育查摆问题整改情况的通报.docx VIP
- 2024-2025学年广东省潮州市高二上学期期末教学质量检测物理试卷.pdf VIP
- 上肢动脉CTA扫描技术课件最新完整版本.pptx VIP
- 2024年湖南汽车工程职业学院单招职业技能测试题库及答案(历年真题).docx VIP
原创力文档

文档评论(0)