JAVA代码:通过Socket读取返回的数据

 
  1. package net.java2000.net;
  2. import java.io.BufferedReader;
  3. import java.io.IOException;
  4. import java.io.InputStreamReader;
  5. import java.net.InetAddress;
  6. import java.net.Socket;
  7. /**
  8.  * 通过Socket读取返回的数据。
  9.  * 
  10.  * @author 赵学庆,Java世纪网(java2000.net)
  11.  * 
  12.  */
  13. public class SocketGet {
  14.   public static void main(String[] args) {
  15.     try {
  16.       // 创建连接
  17.       InetAddress addr = InetAddress.getByName("smtp.163.com");
  18.       int port = 25;
  19.       Socket socket = new Socket(addr, port);
  20.       
  21.       // 如果超过这个时间没有新的数据,则不再继续等待数据
  22.       socket.setSoTimeout(1000);
  23.       // 创建读取数据的Reader,里面指定了需要的编码类型。
  24.       BufferedReader rd = new BufferedReader(new InputStreamReader(socket.getInputStream(),
  25.           "UTF-8"));
  26.       // 读取每一行的数据.注意大部分端口操作都需要交互数据。
  27.       String str;
  28.       while ((str = rd.readLine()) != null) {
  29.         System.out.println(str);
  30.       }
  31.       rd.close();
  32.     } catch (IOException e) {
  33.       e.printStackTrace();
  34.     }
  35.   }
  36. }

运行结果
  1. 220 163.com Anti-spam GT for Coremail System (163com[071018])
  2. java.net.SocketTimeoutException: Read timed out
  3.     at java.net.SocketInputStream.socketRead0(Native Method)
  4.     at java.net.SocketInputStream.read(Unknown Source)
  5.     at sun.nio.cs.StreamDecoder.readBytes(Unknown Source)
  6.     at sun.nio.cs.StreamDecoder.implRead(Unknown Source)
  7.     at sun.nio.cs.StreamDecoder.read(Unknown Source)
  8.     at java.io.InputStreamReader.read(Unknown Source)
  9.     at java.io.BufferedReader.fill(Unknown Source)
  10.     at java.io.BufferedReader.readLine(Unknown Source)
  11.     at java.io.BufferedReader.readLine(Unknown Source)
  12.     at net.java2000.net.SocketGet.main(SocketGet.java:31)

原文: http://www.java2000.net/p9148
更多代码,请访问: http://code.java2000.net













<script type="text/javascript"> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"> </script>
【Java TCP/IP Socket】深入剖析socket——数据传输的底层实现 转载请注明出处:     底层数据结构     如果不理解套接字的具体实现所关联的数据结构和底层协议的工作细节,就很难抓住网络编程的精妙之处,对于TCP套接字来说,更是如此。套接字所关联的底层的数据结构集包含了特定Socket实例所关联的信息。比附,套接字结构除其他信息外还包含:     1、该套接字所关联的本地和远程互联网地址和端口号。     2、一个FIFO(First Im 阅读详情

相关推荐

Vue3 视频播放器完整指南 – @videojs-player/vue 从入门到精通

全面解析 Vue3 生态中最强大的视频播放解决方案 @videojs-player/vue。从基础安装到高级功能,涵盖自动播放、直播流、字幕支持等核心特性。提供完整的代码示例和最佳实践,助你快速构建专业的视频播放应用。

前端开发-前端技术分享 1427

Java基础Socket运用——服务端和客户端的信息交换

网络编程的简单运用

Alcaibur的博客 1970

网格聚类 Grid Clustering/Grid-based Clustering

本文主要简单介绍了网格聚类的基本概念,优缺点,应用场景,建模时的注意事项,评价指标,实现方法,python示例和模型参数等。

JasonH2021的博客 4829

java socket客户端请求并获取响应数据

代码说明详细,菜鸡也能看懂,拒绝网上各种搬砖文章。 先模拟一个socket服务端,并运行它。然后再找另一个类也定义一个main方法,并运行它。运行之后,服务端的消息界面。socket连接工具类。

社会底层无业大学生 2429

envi5.3处理高分二号影像数据详细过程记录

全文根据此篇文章进行数据处理: tm影像辐射定标_高分二号影像数据预处理及裁剪过程 其他参考: 学习笔记---遥感影像辐射定标与大气校正 利用ENVI自带全球DEM数据计算区域平均高程 高分二号数据处理流程(有高分二号的数据信息) GF2有多光谱和全色两个数据,MSS是多光谱的,PAN是全色的,多光谱的分辨率低,全色的高,需要把这两个数据融合,融合之前需要做定标等处理,获取经纬度。 一、多光谱影像处理 1. 辐射定标 以这个为例: 其他路径\2022.4.2...

ligous的博客 5万+

Android 车载开发深度解析:CarPropertyManager 核心机制与实践指南

摘要: Android Automotive OS中,CarPropertyManager作为车载信息娱乐系统的核心组件,连接应用层与车辆硬件(如车速、油量等),其架构基于分层设计(App→CarAPI→VHAL→ECU),采用发布-订阅模式实现高效数据通信。通过HIDL/AIDL跨进程交互及共享内存优化,延迟可降至2ms以下。安全机制包括分级权限控制(VISIBLE/PROTECTED/SYSTEM_RESTRICTED)和HMAC防篡改。开发时需注意监听器生命周期管理、事件合并降负载及低功耗适配。

郑伟强dev的专栏 344

Java Socket 读取服务器端返回数据

//客户端 //1、创建客户端Socket,指定服务器地址和端口 Socket socket =newSocket("localhost",10086); //2、获取输出流,向服务器端发送信息 OutputStream os = socket.getOutputStream();//字节输出流 PrintWriter pw =newPrintWriter(os);//将输出流包装成打印流 pw.

DengNice的专栏 2万+

vue3 - 高德地图定位出错Get ipLocation failed.Geolocation permission denied.(info: “FAILED“ | status: 0)报错解决!

vue3,nuxt3,高德地图,定位,位置,报错,AMap.Geolocation,解决报当前定位失败,高德地图H5 定位失败报错,web网页网站,报错详细解决教程,Get ipLocation failed.Geolocation permission denied.,高德地图定位报错info: "FAILED",高德地图status: 0,已经是https了还是报错,确保了浏览器位置已经开了,手机定位也开了,没解决,H5页面在ios的浏览器上使用 高德地图 报当前定位失败Geolocation,移动端设

✅ 精选推荐文章 6771

java socket 短连接 请求 并获取返回

java socket 短连接 ,模拟pos机器与服务器的通讯

lige12的专栏 2540

【nnUNetv2进阶】三、nnUNetv2 自定义网络-发paper必会

对于很多朋友来说,找到nnunet的网络结构位置的代码可能比较困难,因为nnunet的网络结构从else:代码中没有网络结构的类名,那么使用的网络是哪个呢?打开预处理后的数据集中的nnUNetPlans.json文件,如下图,configurations里面有2d、3d_fullres等,这些表示nnunet的模型,下面的network_class_name指的就是训练使用的模型结构,一般都是PlainConvUNet。

AI爱好者的博客,分享计算机领域相关知识 8758

学Simulink——基于Simulink的固态变压器(SST)多级协同控制​

本文介绍了基于Simulink的固态变压器(SST)多级协同控制系统设计与仿真方法。SST作为智能电网关键设备,包含AC-DC整流、DC-DC隔离和DC-AC逆变三级变换器。针对级间耦合问题,提出了能量-功率协同控制策略,通过纵向解耦和横向联动实现稳定运行。详细演示了在Simulink中搭建三级主电路、设计协同控制器(含电网定向控制、功率前馈和虚拟惯性控制)的全过程,并通过负载突变测试验证了系统动态性能(直流母线电压波动<2%)。最后给出了工程部署建议,包括数字控制延时补偿、启动序列设计和代码自动生成

xiaoheshang_123的博客 208

JAVA代码 通过Socket读取返回的数据

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;p

jgfyyfd的博客 8119

记录一次Spring Framework 漏洞修复的过程

摘要:针对Spring Boot 2.6.13项目在阿里云漏洞扫描中发现的Spring Framework目录遍历漏洞(CVE-2024-38819),首先分析了漏洞成因,确认5.3.23版本存在风险。解决方案包括升级Spring Boot至2.7.18(对应Spring Framework 5.3.41)或6.0+版本,但后者需JDK17支持。临时方案通过配置HttpFirewall限制特殊字符,最终借助阿里云防护服务暂时解决问题。建议长期解决方案仍需升级至安全版本(Spring Boot 6.1.14或

极客栈 1495

java socket返回,JAVA代码 通过Socket读取返回的数据

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog..net/jiangjunshow也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!packagenet.java2000.net;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader...

weixin_35106463的博客 669

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Java Socket正确读取数据姿势

前言 平时日常开发用得最多是Http通讯,接口调试也比较简单的,也有比较强大的框架支持(OkHttp)。 个人平时用到socket通讯的地方是Android与外设通讯,Android与ssl服务通讯,这种都是基于TCP/IP通讯,而且服务端和设备端协议都是不能修改的,只能按照相关报文格式进行通信。 但使用socket通讯问题不少,一般有两个难点: socket通讯层要自己写及IO流不正确使用,遇......

Kelly 2万+

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

java的socket读取一行就结束运行了?使用这种方法可以读取多行数据!

目录 引出问题 第一种(只能读取一行数据) 第二种(可以读取多行数据) 引出问题 写一个socket的公共方法,结果发现socket读取一行数据就结束了,百思不得其解。 在网上也找了一些资料,很多也有坑,这里贴出来自己用的两种方法,以后就不用一直找解决方案了。 第一种(只能读取一行数据) import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import j

秃了也弱了 3583

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Socket与ServerSocket之间的文本数据读取

Socket 客户端代码 package chapter21; import java.io.*; import java.net.Socket; /** * Created by Administrator on 2016/10/6. */ public class TextClient { public static void main(String[] args) thro

zoyohao的博客 1955

Java中的Socket编程详解

Socket(套接字)是网络通信的端点,允许在两台计算机之间通过网络进行数据交换。Socket是网络编程中必不可少的一部分,它建立在TCP/IP协议上,用于管理连接、传输数据。客户端Socket:用于连接远程服务器。服务器Socket:用于侦听客户端请求并与其建立连接。Java中的Socket编程通过和Socket类可以轻松实现客户端与服务器之间的通信。在实际开发中,Socket编程通常用于构建底层网络协议的基础。通过本文的示例,你应该对Java中的Socket编程有了基本的了解。

上进!努力!!! 7536

java socket 字节读取_java – 从socket读取所有数据

我希望同步读取所有数据,从客户端或服务器接收而不使用java中的readline()方法(如c中的readall()).我不想使用下面的代码:BufferedReader reader = new BufferedReader(new inputStreamReader(socket.getInputStream()));String line = null;while ((line = read...

weixin_34524284的博客 1441

socket 读取 所有 数据 java_Java Socket 读取服务器端返回数据

//客户端//1、创建客户端Socket,指定服务器地址和端口Socket socket =newSocket("localhost",10086);//2、获取输出流,向服务器端发送信息OutputStream os = socket.getOutputStream();//字节输出流PrintWriter pw =newPrintWriter(os);//将输出流包装成打印流pw.write(...

weixin_28687415的博客 1075

java之Socket无法完全接收返回内容

最近在使用Socket通讯时,遇到了接收内容不全的问题:客户端发送请求数据,服务器明明返回了73个字节内容,但客户端有时能全部接收,但有时却只能返回4个字节。 一开始是怀疑服务器返回有问题,但使用调试工具连续测试了很多次,结果显示:服务器的确每次都返回了73个字节内容。那很明显了,问题出现在客户端代码上。 错误现象: 再来看看调试工具结果: 让我们来看看客户

LVXIANGAN的专栏 1万+

Java socket编程客户端读取数据不完整

今天在用java socket读取服务器端发送的数据时,发现只能读取服务器端发送的部分数据,无法完整读取服务器端的数据。数据大概有7W多个字节。 原代码如下: private String getSocketDCCReceiveCCA() throws IOException{ InputStream stream=socket.getInputStream(); b...

tingyu_521的专栏 2862
上一篇: 欲买笔记本的朋友参考一下7200元的配置
下一篇: 关于Http和Hibernatet里面Session的区别
java2000_test
博客等级 码龄19年 10粉丝 320原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值