社区
J2ME
帖子详情
读外网数据
lijun51888
2006-03-16 05:53:23
读外网数据,就是想从一个网页上提取我想要的数据,那个网页不是我自己的,如:告诉你一个网址如mail.163.com,一个用户名及密码,怎么知道该用户有几封末读邮件.
...全文
125
4
打赏
收藏
读外网数据
读外网数据,就是想从一个网页上提取我想要的数据,那个网页不是我自己的,如:告诉你一个网址如mail.163.com,一个用户名及密码,怎么知道该用户有几封末读邮件.
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
天外流星
2006-03-22
打赏
举报
回复
使用Java Mail API的方法,主要的操作过程为:
● 获取javax.mail.Session实例,并进而获得javax.mail.Store实例。
● 利用javax.mail.Store实例获得缺省收件箱(INBOX)javax.mail.Folder实例。
● 使用javax.mail.Folder对象提取新邮件,存储为javax.mail.Message对象数组。
● 创建javax.mail.FetchProfile以(潜在地)优化对特定邮件组成成分的提取。
这里的javax.mail.FetchProfile类提供邮件协议提供者可选参数,其目的是更有效地实现邮件组成成分的预提取。
一个例子:
<%@ page language="java" contentType="text/html;charset=gb2312" %>
<%@ page import="java.util.*,java.io.*,java.text.*" %>
<%@ page import="javax.mail.*,javax.mail.internet.*,javax.activation.*" %>
<%!
private String getDisplayAddress(Address a) //转换RFC822为Unicode
{ String pers = null;
String addr = null;
if(a instanceof InternetAddress &&((pers=((InternetAddress)a).getPersonal())!=null))
addr=pers+" "+"<"+((InternetAddress)a).getAddress()+">";
else
addr = a.toString();
return addr;
}
%>
<%
Session mailsession=Session.getInstance(System.getProperties(),null);
mailsession.setDebug(false);
Store store=mailsession.getStore(protocol);//protocol为连接协议,IMAP或是POP
store.connect(mailhost,-1,user,passwd);//mailhost主机,user为用户名,passwd为密码
Folder folder = store.getFolder("INBOX");
try
{ folder.open(Folder.READ_WRITE);}
catch (MessagingException ex)
{ folder.open(Folder.READ_ONLY);}
Message message[]=folder.getMessages();
FetchProfile fp=new FetchProfile();
fp.add(FetchProfile.Item.ENVELOPE);
fp.add(FetchProfile.Item.FLAGS);
fp.add("X-Mailer");
folder.fetch(message,fp);
int id=0,j=0;
for(int i=0;i<request.getParameter("id").length();i++)//假设要阅读第ID个邮件。
id=id*10+(request.getParameter("id").charAt(i)-48);
for(j=0;j<id;j++);
message[j].setFlag(Flags.Flag.SEEN,true);
out.println("<table width=\"550\" border=\"1\" cellpadding=\"0\" cellspacing=\"0\" borderColorDark=\"#eaf0ff\" borderColorLight=\"#000000\" align=\"center\">");
out.println("<tr>");
out.println("<td width=60>主题:</td><td width=490> "+message[j].getSubject()+" </td></tr>");
String from=new String();
Address[] fr=message[j].getFrom();
if(fr!=null)
{ boolean tf=true;
for(int i=0;i<fr.length;i++)
from=from+getDisplayAddress(fr);
}
out.println("<tr><td width=60>来自:</td><td width=490> "+from+" </td></tr>");
out.println("<tr><td colspan=\"2\"> <div align=\"center\"><b>内容</b></div><br>");
Object o=message[j].getContent();
if (message[j].isMimeType("text/plain")) //若其Type为tex/plain就可直接读出了。
out.println((String)o+"</td>");
else if(message[j].isMimeType("multipart/*"))
{ Multipart mp=(Multipart)o;
Part part=mp.getBodyPart(0);
String msg=(String)part.getContent();
StringBuffer buf=new StringBuffer(msg.length()+6);
char ch=' ';
for(int i=0;i<msg.length();i++)//若遇到换行就转为<br>
{ ch=msg.charAt(i);
if(ch=='\n')buf.append("<br>");
else buf.append(ch);
}
out.println(buf.toString());
}
else
out.println("现在还无法显示:"+message[j].getContentType());
out.println("</tr>");
out.println("<table>");
folder.close(true);
store.close();
%>
在Folder对象中可以用getMessageCount()和getUnreadMessageCount()方法来取得总共有多少封信和共有多少封信未读。
天外流星
2006-03-22
打赏
举报
回复
用JAVA Mail实现.
lijun51888
2006-03-22
打赏
举报
回复
大虾,能不能具体一点啊,你对这个问题没法下手!
delphi我也蛮熟悉的,能不能把你做的发给我看一下啊!
lijun51888@163.com 这是我的邮箱!!!
谢谢,谢谢!!!
idilent
2006-03-16
打赏
举报
回复
登陆进取,找到网页内容,然后找出有用的数据的位置,取出这个数据。大致思路就是这样,以前用delphi做过。
Qt 实时
读
串口
数据
,并将
读
到的
数据
从网口发送出去
需求: 1. 要试试从串口
读
取
数据
2. 将
读
到的
数据
从网口发送出去 3.开机启动 4. 没有界面 第一部分 配置Qt Pro文件 需要Qt +=serialport network 第二部分 -串口初始化 void Serial_To_Internet::initialize_SerialPort() { foreach (const QSer
一文
读
懂
数据
库、
数据
仓库、
数据
平台、
数据
中台、
数据
湖
数据
库是用于存储、管理、维护和检索
数据
的系统。是所有软件应用、网站、企业信息系统和
数据
驱动决策的基础。简单来说就是:
数据
库就是一个存储信息(水)的容器。
数据
库使用场景-图1
数据
库主要分为两种类型:关系型
数据
库和非关系型(NoSQL)
数据
库。非关系型又分为四种类型:键值型、列存储型、文件型和图形
数据
库(这块后面有时间详细说下)。
数据
库类型-图2题外话:某些
数据
库(如 MongoDB)可以分为多个类别,因为它们支持不同的
数据
模型。此外,所提供的列表并不详尽,因为每个类别中还有许多其他
数据
库可用。
【Oracle】公安内网+互联网
数据
同步机制分析?
公安内网与互联网
数据
同步机制分析(这里指的是脱敏
数据
) 1、项目背景 原则上,公安内网
数据
是无法同步到互联网,也是不被允许的。但是为了一些业务的需要(例如,内网办理的业务要及时反馈给用户),这里就需要内
外网
同步机制。在不违规又能满足条件的情况下,
数据
必须脱敏,且需要在前置机上完成。 2、解决方案 @1、
数据
库与
数据
库之间的同步 @2、
外网
通过SOAP+地址映射,主动进内网拉取
数据
。 3、重点讨论 ...
物理隔离与
数据
交换-网闸中的核心技术
网闸中隔离控制技术的几个发展方向 网闸不同于防火墙,也不同于堡垒机,是因为网闸从物理上保证内
外网
的不互通,其中隔离控制部分是实现这个物理隔离的关键。这里重点分析目前流行的几种技术: 1、摆渡交换技术 摆渡开关是网闸最常用的倒换方式。为了保持内
外网
的物理隔离,所以在与内网连接的时候,一定与
外网
断开,但与
外网
连接的时候,一定与内网断开。所谓断开是只物理通讯的“高阻”状态或物理的停电,没有进行通讯的可能。 在内
外网
处理单元内都有自己的缓冲空间,用来存储需要交换的
数据
文件,在隔离与交换控制单元.
什么是带外
数据
?
带外
数据
(out—of—band data),有时也称为加速
数据
(expedited data), 是指连接双方中的一方发生重要事情,想要迅速地通知对方。 这种通知在已经排队等待发送的任何“普通”(有时称为“带内”)
数据
之前发送。 带外
数据
设计为比普通
数据
有更高的优先级。 带外
数据
是映射到现有的连接中的,而不是在客户机和服务器间再用一个连接。 在字节流服务中,由于没
J2ME
13,097
社区成员
26,492
社区内容
发帖
与我相关
我的任务
J2ME
Java J2ME
复制链接
扫一扫
分享
社区描述
Java J2ME
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章