Kamis, 25 September 2008

pemrograman e-mail

Ini adalah contoh program e-mail dengan menggunakan java. seperti gambar di atas program ini bekerja pada konsol( command prompt). Anda bisa membuatnya dalam bentuk GUI(general user interface) atau bisa dikatakan program bentuk windows. langsung saja ini adalah contoh program dengan menggunakan java

simpan dengan nama file WMail.java


import java.io.*;
import java.lang.*;
import java.util.*;
public class WMail
{
public static void main(String args[])throws IOException
{
InputStreamReader I=new InputStreamReader(System.in);
BufferedReader B=new BufferedReader(I);
System.out.print("Enter function (SignUp, Login, Compose): ");
String ch=B.readLine();

if(ch.equals("signup"))
{

InputStreamReader reader=new InputStreamReader(System.in);
BufferedReader input=new BufferedReader(reader);
System.out.print("Username@wmail.com: ");
java.lang.String User=input.readLine();
System.out.print("Password: ");
java.lang.String Pass=input.readLine();

System.out.println("New ID created successfully!");

FileWriter fout=new FileWriter(User+"@wmail.com");
BufferedWriter bout=new BufferedWriter(fout);
PrintWriter pout=new PrintWriter(bout);
pout.println(Pass);

FileWriter fot=new FileWriter(User);
BufferedWriter bot=new BufferedWriter(fot);
PrintWriter pot=new PrintWriter(bot);

pout.close();
bout.close();
pout.close();
}

else
if(ch.equals("login"))
{



InputStreamReader reader=new InputStreamReader(System.in);
BufferedReader input=new BufferedReader(reader);
System.out.print("Username: ");
java.lang.String User=input.readLine();
System.out.print("Password: ");
java.lang.String Pass=input.readLine();

FileReader fout=new FileReader(User+"@wmail.com");
BufferedReader bout=new BufferedReader(fout);

java.lang.String data=bout.readLine();
if(Pass.equals(data))
{
System.out.println("Logged On!");
System.out.print("Do you want to go to the inbox: (yes/no)");
java.lang.String Ask=input.readLine();
if(Ask.equals("yes"))
{
FileReader f=new FileReader(User);
BufferedReader b=new BufferedReader(f);
System.out.println("");
java.lang.String Composed;
int i=0;
while((Composed=b.readLine())!=null)
{
i++;
System.out.println(Composed);
}
System.out.println("");
b.close();
bout.close();
}


}
else
{
System.out.println("Wrong password!");
}
}

else
if(ch.equals("compose"))
{

InputStreamReader reader=new InputStreamReader(System.in);
BufferedReader input=new BufferedReader(reader);
Calendar c=Calendar.getInstance();

System.out.print("Username: ");
java.lang.String User1=input.readLine();
System.out.print("Password: ");
java.lang.String Pass=input.readLine();

FileReader fout=new FileReader(User1+"@wmail.com");
BufferedReader bout=new BufferedReader(fout);

java.lang.String data=bout.readLine();
if(Pass.equals(data))
{
System.out.println("Logged On!");

System.out.print("To: ");
java.lang.String User=input.readLine();

System.out.print("From: ");
java.lang.String From=input.readLine();
System.out.println("");
System.out.println("Letter Content:");
java.lang.String Body=input.readLine();

FileWriter fin=new FileWriter(User);
BufferedWriter bin=new BufferedWriter(fin);
PrintWriter pin=new PrintWriter(bin);
System.out.println("");
pin.println("Time:"+c.get(Calendar.HOUR)+":"+c.get(Calendar.MINUTE)+" PM");
pin.println("From "+From+",");
pin.println(Body);
System.out.println("");
System.out.println("Mail sent!");
bout.close();
pin.close();
bin.close();
pin.close();
}
else
{
System.out.println("Wrong password!");
}


}
else
System.out.println("Wrong choice!");
}
}

Disini saya menggunakan java 1.5. kalian tinggal copy kode program tersebut dan menajalankannya. ketika kalian signup maka program tersebut akan membuat 2 file yang bernama nama_kamu@wmail.com dan nama_kamu@wmail.com.

Label:

pemrograman socket (server)

Ini adalah contoh kode program client server dengan menggunakan bahasa program java, dimana kalian bisa mengembangkan program ini lebih luas. Seperti : aplikasi chatting, ftp(file transfer protocol),pengiriman email, remote, maupun pengaksesan data jarak jauh. Langsung saja


ini adalah file server1.java


//aplikasi server

import java.awt.*;

import java.awt.event.*;

import java.net.*;

import java.io.*;
public class Server1 extends Frame implements ActionListener,Runnable,KeyListener{ ServerSocket s;

Socket s1;

BufferedReader br;

BufferedWriter bw;

TextField text;

TextField name;

Button exit,clear;

Label label;

List list;

Panel p1=null;

Panel p2=null;

Panel sp21=null;

Panel sp22=null;

Panel jp=null;

public void run() {

try{s1.setSoTimeout(1);

}catch(Exception e){} while (true) {

try{

list.add(br.readLine());

}catch (Exception h){}

if(list.getItemCount()==7)

list.remove(0);
} }

public Server1(String m)

{

super(m);

jp=new Panel();

p1=new Panel();

p2=new Panel();

sp21=new Panel();

sp22=new Panel();

jp.setLayout(new GridLayout(2,1));

p1.setLayout(new GridLayout(1,1));

p2.setLayout(new GridLayout(2,1));

sp21.setLayout(new FlowLayout());

sp22.setLayout(new FlowLayout());

exit = new Button("Exit");

clear = new Button("Clear");

exit.addActionListener(this);

clear.addActionListener(this);

list = new List(50);

text = new TextField(43);

name = new TextField(10);

label = new Label("Enter your name");

name.addKeyListener(this);

text.addKeyListener(this);

p1.add(list);

sp21.add(text);

sp21.add(exit);

sp22.add(label);

sp22.add(name);

sp22.add(clear);

p2.add(sp21);

p2.add(sp22);

jp.add(p1);

jp.add(p2);

this.add(jp);

setBackground(Color.orange);

setSize(380,300);

setLocation(0,0);

setVisible(true);

setResizable(false);

name.requestFocus();

try{ /*786 adalah port untuk bisa berkomunikasi dengan klien anda bisa merubahnya sesuai dengan keinginan anda*/

s = new ServerSocket(786);

s1=s.accept();

br = new BufferedReader(new InputStreamReader( s1.getInputStream()));

bw = new BufferedWriter(new OutputStreamWriter( s1.getOutputStream())); bw.write("Welcome");

bw.newLine();

bw.flush();

Thread th;

th = new Thread(this);

th.start();

}catch(Exception e){} }

public static void main(String args[]) {

new Server1("Server");
}
public void actionPerformed ( ActionEvent e) {

if (e.getSource().equals(exit)) System.exit(0);

else if (e.getSource().equals(clear))

{ name.setText(" ");

name.setEditable(true);

} }

public void keyPressed(KeyEvent ke) {

if(text.equals(ke.getSource()))

{

if(ke.getKeyCode()==KeyEvent.VK_ENTER)

{

try{

bw.write(name.getText()+">>"+text.getText());

bw.newLine();

bw.flush();

}catch(Exception m){}

list.add(name.getText()+">>"+text.getText());

text.setText("");
} }

else if(name.equals(ke.getSource())) {

if(ke.getKeyCode()==KeyEvent.VK_ENTER)

{

name.setEditable(false);

text.requestFocus();

} }
}

public void keyReleased(KeyEvent ke) { //something }

public void keyTyped(KeyEvent ke) { //something }
}

Label: