package com.huawei.xbliuc.socket;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.Socket;
import java.net.UnknownHostException;
/**
* TODO 添加类注释
*/
public class SMTPDemo
{
//以下三项请在使用时改成真实的信箱地址 ,注意:SMTPService和receiver必须是同一个服务器
private static String sender = "sender";
private static String receive = "receive";
private static String SMTPService = "smtpservice";
public static void get()
{
int SMTPPort = 25;
Socket client = null;
try
{
//向SMTP服务程序建立一个套接字连接
client = new Socket(SMTPService, SMTPPort);
//创建一个BufferedReader对象,以便从套接字中读取输出
InputStream is = client.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
//创建一个PrintWriter对象,以便向套接字中写入内容
OutputStream os = client.getOutputStream();
PrintWriter pw = new PrintWriter(os, true);
//显示同SMTP交互的过程
System.out.println("S:" + br.readLine());
pw.print("hello");
System.out.println("S:" + br.readLine());
pw.print("mail from:" + "<" + sender + ">");
System.out.println("S:" + br.readLine());
pw.print("rcpt to:" + "<" + receive + ">");
System.out.println("S:" + br.readLine());
pw.print("data");
//发送邮件标题
pw.print("Subject:你好");
//发送邮件内容
pw.print("ni hao");
pw.print("wo shi xbliuc");
pw.print(".");//以此处的”.“表示结束
pw.print("reset");
pw.print("quit");
}
catch (UnknownHostException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
finally
{
if (client != null)
{
try
{
client.close();
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
}
}
分享到:
相关推荐
例如,`Socket1.Port = 1234` 和 `Socket1.Host = "192.168.1.1"`,其中1234是自定义的端口,"192.168.1.1"是服务器的IP地址。 为了实现聊天功能,我们需要实现以下关键步骤: 1. **连接服务器**:使用`Socket1....
1. 建立连接:在Android中,使用`Socket`类来创建TCP连接。首先,需要指定服务器的IP地址和端口号,然后调用`connect()`方法建立连接。在连接过程中,需要处理异常,例如`UnknownHostException`和`IOException`。 `...
- `Socket1`可能是案例中的第二个客户端示例,展示如何处理多个客户端连接。服务端可能需要一个循环或线程池来处理多个并发的`Socket`连接请求。 通过这个简单的Java Socket案例,你可以了解基本的客户端-服务器...
1. 创建Socket对象:`Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);` 2. 连接服务器:`socket.Connect(new IPEndPoint(IPAddress.Parse("服务器IP"), 端口号));` ...
1. **SuperSocket.Mono.sln**、SuperSocket.2010.NET35.sln等.sln文件:这些都是Visual Studio的解决方案文件,用于管理和构建SuperSocket项目。 2. **LICENSE.TXT**和**README.TXT**:分别包含了软件的许可证信息...
1. **Server**: SuperSocket的核心组件,用于监听和接受客户端连接。它可以是基于TCP或UDP的,并且支持多线程、异步操作。 2. **Session**: 代表一个客户端的连接,每个客户端连接都会创建一个对应的Session对象。...
Socket 编程详解 在网络编程中,Socket 是一个基本概念, plays a crucial role in building network applications. 在 C# 中,Socket 编程是通过使用 System.Net.Sockets 命名空间中的类和方法来实现的。下面,...
1. 初始化与配置:在应用程序启动时,根据预设的参数初始化Socket池,如最大连接数、最小连接数、超时时间等。 2. 获取Socket:当需要建立连接时,从池中取出一个Socket,如果池为空,则创建新的Socket。可以采用...
本文将深入介绍C语言下的Socket通信入门知识,并通过分析提供的两个文件——"socket1-server"和"socket1-client",来阐述基本的Socket编程步骤。 首先,我们需要理解Socket的概念。Socket是网络上的两个进程之间...
1. socket()函数:用于创建一个Socket描述符,参数包括协议族(如AF_INET)、Socket类型(如SOCK_STREAM)和协议(通常为0,表示使用默认协议)。 三、绑定Socket 2. bind()函数:将Socket与特定的IP地址和端口号...
1. **使用SuperSocket开发TCP应用** - SuperSocket为TCP应用提供了一套完整的事件驱动模型,如连接建立、数据接收、断开连接等,开发者只需关注这些事件的处理即可。 - 它提供了简单易用的API,如`Server.Start()`...
1. 类设计:通常会创建一个自定义的Socket类,如TcpSocket和UdpSocket,封装Socket的基本操作,如连接、断开、发送和接收数据,以及错误处理等。 2. 数据传输:在封装类中,可以设计方法用于包装和解包数据,例如将...
1. **创建TCP服务器**:设置监听端口,等待客户端连接。一旦有连接请求,SocketTool将显示连接信息,并允许你接收和发送TCP数据。 2. **创建TCP客户端**:输入目标服务器的IP地址和端口号,SocketTool可以主动发起...
SocketTool调试软件是一款网络TCP/UDP通信调试工具,本工具集功能强大与简单易用为一体,是无需安装的免费绿色软件。 它可以帮助网络编程人员、网络维护人员检查...★ 支持数据循环发送,同一内容可自动发送1次至10000次
C#raw Socket编程 C#raw Socket编程是指使用C#语言实现原始套接字(Raw Socket)的编程技术。原始套接字是一种网络编程接口,允许开发者在应用层实现网络封包监视和控制。 Windows Sockets 是一种网络编程接口,...
1. **连接测试**:工具能够模拟客户端,尝试与指定的服务器建立TCP连接,验证服务器是否在线,端口是否开放,连接过程是否顺利。 2. **数据发送与接收**:在连接成功后,工具可以发送各种类型的数据(如文本、二...
1. **选择代理类型**:根据网络环境,选择合适的代理类型,如HTTP代理、SOCKS4/5代理等。每种代理类型有其特定的协议和连接方式。 2. **构造代理地址**:代理服务器通常由IP地址或域名及端口号组成,例如:"192.168...
1. **服务器端设置**:在Node.js项目中,导入`socket.io`模块,初始化服务器并监听特定端口,然后使用`io.on('connection', (socket) => {})`来处理新连接和事件。 2. **客户端连接**:在Java或Android应用中,导入...
sokit socket调试 tcp udp for mac