J
JensDaMan
Gast
Also ich hab ne eigene implementierung der JavaMail Api und versuche die Email adressen (TO) von einer externen txt file in eine arrayList zu laden. Dadurch kann ich dann in der externen file angeben an welche personen das email verschickt werden soll. Bin ziemlich neu in java und weiss das ich den bufferedReader und streamInput bentzen muss, aber das mit der ArrayList verschafft mir probleme.
Also erstens ist die ArrayList das richtige werkzeug? Ich mein Arrays könnte man ja auch benutzen. Woher weiss ich welches besser ist?
Zweitens wie baue ich das auf? Also ich hab da mal ein bisschen code:
Drittens wie wende ich das dann in der main methode an.
Also erstens ist die ArrayList das richtige werkzeug? Ich mein Arrays könnte man ja auch benutzen. Woher weiss ich welches besser ist?
Zweitens wie baue ich das auf? Also ich hab da mal ein bisschen code:
Code:
package mail;
import java.io.*;
import java.net.InetAddress;
import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
import config.Config;
public class JXMessage {
private ArrayList _toList = new ArrayList();
private ArrayList _ccList = new ArrayList();
private ArrayList _bccList = new ArrayList();
private ArrayList _fileList = new ArrayList();
private String _message = null;
private String _mailServer = null;
private String _mailSubject = null;
private String _replyTo = null;
private String _fromName = null;
private boolean _asHTML = false;
public JXMessage() {
}
public JXMessage(String svr) {
setMailServer(svr);
}
public JXMessage(String to, String from, String svr) {
addToAddress(to);
setFromName(from);
setMailServer(svr);
}
// set methods.
public void setMessage(String msg) {
_message = msg;
}
public void setMessage(StringBuffer msg) {
_message = msg.toString();
}
public void setMailServer(String svr) {
_mailServer = svr;
}
public void setMailSubject(String sub) {
_mailSubject = sub;
}
public void setReplyTo(String rep) {
_replyTo = rep;
}
public void setFromName(String from) {
_fromName = from;
}
public void setHTML(boolean html) {
_asHTML = html;
}
// data manipulation methods.
public void addToAddress(String to) {
if (!isStringInList(to, _toList)) {
_toList.add(to);
}//needs modification to read in file
}
public void addToAddress(ArrayList _to) {
for (int i = 0; i < _to.size(); i++) {
addToAddress((String) _to.get(i));
}
}
public void addCCAddress(String cc) {
if (!isStringInList(cc, _ccList)) {
_ccList.add(cc);
}
}
public void addCCAddress(ArrayList _cc) {
for (int i = 0; i < _cc.size(); i++) {
addCCAddress((String) _cc.get(i));
}
}
public void addBCCAddress(String bcc) {
if (!isStringInList(bcc, _bccList)) {
_bccList.add(bcc);
}
}
public void addBCCAddress(ArrayList _bcc) {
for (int i = 0; i < _bcc.size(); i++) {
addBCCAddress((String) _bcc.get(i));
}
}
public void addFile(String pFile) {
if (!isStringInList(pFile, _fileList)) {
_fileList.add(pFile);
}
}
public void addFile(ArrayList _files) {
for (int i = 0; i < _files.size(); i++) {
addFile((String) _files.get(i));
}
}
public boolean deleteFile(String fileName) {
File file = new File(fileName);
return file.delete();
}
private boolean isStringInList(String add, ArrayList list) {
boolean rv = false;
if (list == null) {
return rv;
}
for (int i = 0; i < list.size(); i++) {
String l = (String) list.get(i);
if (l != null && add != null) {
if (l.equalsIgnoreCase(add)) {
rv = true;
break;
}
}
}
return rv;
}
// get methods
protected ArrayList getToList() {
return _toList;
}
protected ArrayList getCCList() {
return _ccList;
}
protected ArrayList getBCCList() {
return _bccList;
}
protected ArrayList getFileList() {
return _fileList;
}
public String getMessage() {
return _message;
}
public String getMailServer() {
return _mailServer;
}
public String getMailSubject() {
return _mailSubject;
}
public String getFromName() {
return _fromName;
}
public String getReplyTo() {
return _replyTo;
}
public boolean isHTML() {
return _asHTML;
}
}
Drittens wie wende ich das dann in der main methode an.