【备忘】用命令测试SMTP的发邮件功能

C:\>Telnet mailserver 25     #先连接到SMTP服务器的25端口
220 mailserver .domain.com Microsoft ESMTP MAIL Service ready at Fri, 27 Sep 2019 10:16:57 +0800
ehlo mailserver    # 第一条命令
250-mailserver.domain.com Hello [10.1.1.1]
250-SIZE 37748736
250-PIPELINING
250-DSN
250-ENHANCEDSTATUSCODES
250-STARTTLS
250-X-ANONYMOUSTLS
250-AUTH NTLM
250-X-EXPS GSSAPI NTLM
250-8BITMIME
250-BINARYMIME
250-CHUNKING
250 XRDST
mail from: test001@domain.com    # 第二条命令,设定发件人
250 2.1.0 Sender OK
rcpt to: test101@domain.com      # 第三条命令, 设定收件人
250 2.1.5 Recipient OK
Data    # 第四条命令:输入data 命令后,直接回车,用来在下面进行邮件内容的设定.
354 Start mail input; end with <CRLF>.<CRLF>
subject: 可以在这里输入邮件主题     #第五条命令,设置邮件主题
#再多敲一个回车
可以在这里输入测试邮件的正文     #邮件正文

.    # 第六条命令,就是一个英文的句号".", 用来发送测试邮件

250 2.6.0 < 4add7c4-1311-1212@mailserver.domain.com> [InternalId=3058635, Hostname=mailserver.domain.com] 1494 bytes in 0.126, 11.538 KB/sec Queued mail for delivery
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现备忘录翻页功能需要以下步骤: 1. 创建备忘录界面布局:使用RecyclerView或ViewPager作为主要布局,其中每个备忘录被表示为一个单独的布局项。 2. 创建备忘录数据模型:创建一个备忘录数据模型,其中包括备忘录标题、内容和时间等信息。 3. 创建备忘录适配器:使用RecyclerView或ViewPager的适配器将备忘录数据模型与备忘录界面布局相匹配。 4. 实现备忘录翻页功能:为备忘录界面布局添加上一页和下一页按钮,并使用适配器中的数据集合实现翻页功能。 下面是一个简单的实现备忘录翻页功能的代码示例: 1. 备忘录数据模型: ``` public class Memo { private String title; private String content; private String time; public Memo(String title, String content, String time) { this.title = title; this.content = content; this.time = time; } public String getTitle() { return title; } public String getContent() { return content; } public String getTime() { return time; } } ``` 2. 备忘录适配器: ``` public class MemoAdapter extends RecyclerView.Adapter<MemoAdapter.MemoViewHolder> { private List<Memo> memoList; public MemoAdapter(List<Memo> memoList) { this.memoList = memoList; } @NonNull @Override public MemoViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.memo_item, parent, false); return new MemoViewHolder(view); } @Override public void onBindViewHolder(@NonNull MemoViewHolder holder, int position) { Memo memo = memoList.get(position); holder.titleText.setText(memo.getTitle()); holder.contentText.setText(memo.getContent()); holder.timeText.setText(memo.getTime()); } @Override public int getItemCount() { return memoList.size(); } public class MemoViewHolder extends RecyclerView.ViewHolder { TextView titleText; TextView contentText; TextView timeText; public MemoViewHolder(View itemView) { super(itemView); titleText = itemView.findViewById(R.id.title_text); contentText = itemView.findViewById(R.id.content_text); timeText = itemView.findViewById(R.id.time_text); } } } ``` 3. 备忘录界面布局: ``` <androidx.recyclerview.widget.RecyclerView android:id="@+id/memo_recycler_view" android:layout_width="match_parent" android:layout_height="match_parent" /> ``` 4. 实现备忘录翻页功能: ``` public class MemoActivity extends AppCompatActivity { private List<Memo> memoList; private RecyclerView memoRecyclerView; private MemoAdapter memoAdapter; private int currentPage = 0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_memo); memoList = new ArrayList<>(); memoList.add(new Memo("Memo 1", "Content 1", "2021-10-01")); memoList.add(new Memo("Memo 2", "Content 2", "2021-10-02")); memoList.add(new Memo("Memo 3", "Content 3", "2021-10-03")); memoList.add(new Memo("Memo 4", "Content 4", "2021-10-04")); memoList.add(new Memo("Memo 5", "Content 5", "2021-10-05")); memoRecyclerView = findViewById(R.id.memo_recycler_view); memoAdapter = new MemoAdapter(memoList); memoRecyclerView.setAdapter(memoAdapter); Button prevButton = findViewById(R.id.prev_button); prevButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (currentPage > 0) { currentPage--; memoRecyclerView.scrollToPosition(currentPage); } } }); Button nextButton = findViewById(R.id.next_button); nextButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (currentPage < memoList.size() - 1) { currentPage++; memoRecyclerView.scrollToPosition(currentPage); } } }); } } ``` 在上面的示例中,我们创建了一个包含5个备忘录的列表,并将其传递给MemoAdapter。然后,我们在备忘录界面布局中添加了上一页和下一页按钮,并在MemoActivity中实现了按钮的点击事件。在按钮的点击事件中,我们更新当前页码并使用RecyclerView的scrollToPosition方法将列表滚动到正确的位置。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值