'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/' };
public BASE64Encoder() { }
public String encode(byte[] a) { int totalBits = a.length * 8; int nn = totalBits % 6;
int curPos = 0;// process bits
StringBuffer toReturn = new StringBuffer(); while (curPos < totalBits) { int bytePos = curPos / 8; switch (curPos % 8) {
case 0:
toReturn.append(codec_table[(a[bytePos] & 0xfc) >> 2]); break; case 2:
toReturn.append(codec_table[(a[bytePos] & 0x3f)]); break; case 4:
if (bytePos == a.length - 1) {
toReturn
.append(codec_table[((a[bytePos] & 0x0f) << 2) & 0x3f]); } else {
int pos = (((a[bytePos] & 0x0f) << 2) | ((a[bytePos + 1] & 0xc0) >> 6)) & 0x3f;
toReturn.append(codec_table[pos]); } break; case 6:
if (bytePos == a.length - 1) { toReturn
.append(codec_table[((a[bytePos] & 0x03) << 4) & 0x3f]); } else {
int pos = (((a[bytePos] & 0x03) << 4) | ((a[bytePos + 1] & 0xf0) >> 4)) & 0x3f;
toReturn.append(codec_table[pos]); }
break; default:
//never hanppen break; }
curPos+=6; } if(nn==2) {
toReturn.append(\ }
else if(nn==4)
{
toReturn.append(\ }
return toReturn.toString(); } }
/**
* 邮件实体POJO类 */
//package mail; /**
* @author Daniel Cheng * */
public class MailMessage { private String from; private String to;
private String subject; private String content; private String dataFrom; private String dataTo; private String user; private String password; /** * */
public MailMessage() {
super();
// TODO Auto-generated constructor stub } /**
* @param from * @param to * @param subject * @param content * @param dataFrom * @param dataTo * @param user * @param password */
public MailMessage(String from, String to, String subject, String content, String dataFrom, String dataTo, String user, String password) { super();
this.from = from; this.to = to;
this.subject = subject; this.content = content;
this.dataFrom = dataFrom; this.dataTo = dataTo; this.user = user;
this.password = password;
}
public String getFrom() { return from; }
public void setFrom(String from) { this.from = from; }
public String getTo() { return to;
}
public void setTo(String to) { this.to = to;
}
public String getSubject() { return subject; }
public void setSubject(String subject) { this.subject = subject; }
public String getContent() {
return content; }
public void setContent(String content) { this.content = content; }
public String getDataFrom() { return dataFrom; }
public void setDataFrom(String dataFrom) { this.dataFrom = dataFrom; }
public String getDataTo() { return dataTo;
}
public void setDataTo(String dataTo) { this.dataTo = dataTo; }
public String getUser() { return user; }
public void setUser(String user) { this.user = user; }
public String getPassword() { return password; }
public void setPassword(String password) { this.password = password; } }