Nama : Ersus Saeful Hidayat
NIM : 49012050
Jurusan : TKJMD – STEI - ITB
Link Video Youtube klik disini
Sourcecode :
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import javax.swing.JFileChooser;
import javax.swing.JOptionPane;
/*
* To change this
template, choose Tools | Templates
* and open the
template in the editor.
*/
/*
* Notepad.java
*
* Created on Jan
2, 2013, 2:09:49 PM
*/
/**
*
============================================================================
* @author MALIKA
AZZAHRA
*
============================================================================
* Nama : Ersus Saeful Hidayat
* NIM : 49012050
* Jurusan : TKJMD (Teknik Komputer Jaringan Media
Digital) STEI - ITB
*
============================================================================
*/
public class Notepad extends javax.swing.JFrame {
String Tampil,
Lokasi;
private File
File;
private boolean
Saved = true;
/** Creates new
form Notepad */
public
Notepad() {
initComponents();
}
/** This method
is called from within the constructor to
* initialize
the form.
* WARNING: Do
NOT modify this code. The content of this method is
* always
regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
//
<editor-fold defaultstate="collapsed" desc="Generated
Code">
private void
initComponents() {
jScrollPane1 = new javax.swing.JScrollPane();
jTextArea =
new javax.swing.JTextArea();
jMenuBar1 =
new javax.swing.JMenuBar();
jMenu1 =
new javax.swing.JMenu();
jMenuItemNew
= new javax.swing.JMenuItem();
jMenuItemOpen = new javax.swing.JMenuItem();
jMenuItemSave = new javax.swing.JMenuItem();
jMenuItemSaveAs = new javax.swing.JMenuItem();
jMenuItemKeluar = new javax.swing.JMenuItem();
jMenu2 =
new javax.swing.JMenu();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jTextArea.setColumns(20);
jTextArea.setRows(5);
jScrollPane1.setViewportView(jTextArea);
jMenu1.setText("File");
jMenuItemNew.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_N,
java.awt.event.InputEvent.CTRL_MASK));
jMenuItemNew.setIcon(new javax.swing.ImageIcon("D:\\Documents\\Data
Campus\\ITB SEAMOLEC\\Kuliah Tahap II - ITB B6 - TKJMD\\Course LSKK
Website\\TMD11 Pemrograman Java2SE\\Icon\\page.gif")); // NOI18N
jMenuItemNew.setText("New");
jMenuItemNew.addActionListener(new java.awt.event.ActionListener() {
public
void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItemNewActionPerformed(evt);
}
});
jMenu1.add(jMenuItemNew);
jMenuItemOpen.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_O,
java.awt.event.InputEvent.CTRL_MASK));
jMenuItemOpen.setIcon(new
javax.swing.ImageIcon("D:\\Documents\\Data Campus\\ITB SEAMOLEC\\Kuliah
Tahap II - ITB B6 - TKJMD\\Course LSKK Website\\TMD11 Pemrograman
Java2SE\\Icon\\folder_open.gif")); // NOI18N
jMenuItemOpen.setText("Open");
jMenuItemOpen.addActionListener(new java.awt.event.ActionListener() {
public
void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItemOpenActionPerformed(evt);
}
});
jMenu1.add(jMenuItemOpen);
jMenuItemSave.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_S,
java.awt.event.InputEvent.CTRL_MASK));
jMenuItemSave.setIcon(new javax.swing.ImageIcon("D:\\Documents\\Data
Campus\\ITB SEAMOLEC\\Kuliah Tahap II - ITB B6 - TKJMD\\Course LSKK
Website\\TMD11 Pemrograman Java2SE\\Icon\\disk.gif")); // NOI18N
jMenuItemSave.setText("Save");
jMenuItemSave.addActionListener(new java.awt.event.ActionListener() {
public
void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItemSaveActionPerformed(evt);
}
});
jMenu1.add(jMenuItemSave);
jMenuItemSaveAs.setIcon(new javax.swing.ImageIcon("D:\\Documents\\Data
Campus\\ITB SEAMOLEC\\Kuliah Tahap II - ITB B6 - TKJMD\\Course LSKK
Website\\TMD11 Pemrograman Java2SE\\Icon\\savenote.gif")); // NOI18N
jMenuItemSaveAs.setText("SaveAs..");
jMenuItemSaveAs.addActionListener(new java.awt.event.ActionListener() {
public
void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItemSaveAsActionPerformed(evt);
}
});
jMenu1.add(jMenuItemSaveAs);
jMenuItemKeluar.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_X,
java.awt.event.InputEvent.CTRL_MASK));
jMenuItemKeluar.setIcon(new
javax.swing.ImageIcon("D:\\Documents\\Data Campus\\ITB SEAMOLEC\\Kuliah
Tahap II - ITB B6 - TKJMD\\Course LSKK Website\\TMD11 Pemrograman
Java2SE\\Icon\\home.gif")); // NOI18N
jMenuItemKeluar.setText("Exit");
jMenuItemKeluar.addActionListener(new java.awt.event.ActionListener() {
public
void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItemKeluarActionPerformed(evt);
}
});
jMenu1.add(jMenuItemKeluar);
jMenuBar1.add(jMenu1);
jMenu2.setText("Edit");
jMenuBar1.add(jMenu2);
setJMenuBar(jMenuBar1);
javax.swing.GroupLayout layout = new
javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 400,
Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jScrollPane1,
javax.swing.GroupLayout.DEFAULT_SIZE, 279, Short.MAX_VALUE)
);
pack();
}//
</editor-fold>
private void
jMenuItemNewActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add
your handling code here:
File_baru();
}
private void
jMenuItemOpenActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add
your handling code here:
Buka_File();
}
private void
jMenuItemSaveActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add
your handling code here:
if (File ==
null)
{
SimpanAs_File();
}
else
{
Simpan_File();
}
}
private void
jMenuItemSaveAsActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add
your handling code here:
SimpanAs_File();
}
private void
jMenuItemKeluarActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add
your handling code here:
Keluar();
}
/**
* @param args the command line arguments
*/
public static
void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public
void run() {
new
Notepad().setVisible(true);
}
});
}
public void
File_baru()
{
if
(jTextArea.getText().equals("") ||
jTextArea.getText().equals(Tampil))
{
jTextArea.setText("");
Tampil
= "";
Lokasi
= "";
setTitle("Belum ada judul file - Notepad Saeful");
}
else
{
int i =
JOptionPane.showConfirmDialog(null,"Isi file telah perubah!\nApakah anda
ingin menyimpan perubahan?");
if (i
== 0)
Simpan_File();
else if
(i == 1)
{
jTextArea.setText("");
Lokasi = "";
setTitle("Belum ada judul file - Notepad Saeful");
}
else if
(i == 2)
return;
}
}
public void
Buka_File()
{
JFileChooser filechooser = new JFileChooser();
filechooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
int i =
filechooser.showOpenDialog(this);
if (i ==
filechooser.CANCEL_OPTION)
return;
File
BukaFile = filechooser.getSelectedFile();
if
(BukaFile == null || BukaFile.getName().equals(""))
{
JOptionPane.showMessageDialog(this, "Pilih sebuah file!",
"Error", JOptionPane.ERROR_MESSAGE);
return;
}
try {
BufferedReader bufferedreader = new BufferedReader(new
FileReader(BukaFile));
StringBuffer stringbuffer = new StringBuffer();
String
Baris;
while((Baris = bufferedreader.readLine()) !=
null)stringbuffer.append(Baris+"\n");
jTextArea.setText(stringbuffer.toString());
Tampil
= jTextArea.getText();
Lokasi
= BukaFile.toString();
setTitle(BukaFile.getName()+"- Notepad Saeful");
} catch
(FileNotFoundException ex) {
JOptionPane.showMessageDialog(null, "File tidak ditemukan:"+
ex);
} catch
(IOException ex)
{
JOptionPane.showMessageDialog(null, "IO Error:"+ ex);
}
}
public void
Simpan_File()
{
if (File !=
null)
{
FileWriter filewriter = null;
try {
filewriter = new FileWriter(File);
filewriter.write(jTextArea.getText());
filewriter.flush();
Saved = true;
} catch
(IOException ex) {
JOptionPane.showMessageDialog(this, "Terjadi kesalahan!\nTidak
dapat disimpan");
}
finally
{
try
{
filewriter.close();
}
catch (IOException ex) {
ex.printStackTrace();
}
}
}
else
{
SimpanAs_File();
}
}
public void
SimpanAs_File()
{
JFileChooser filechooser = new JFileChooser(".");
int i =
filechooser.showSaveDialog(this);
if (i ==
JFileChooser.APPROVE_OPTION)
{
File =
new File(filechooser.getSelectedFile().getPath()+".txt");
setTitle(File.getPath());
Simpan_File();
}
}
public void
Keluar()
{
if
(jTextArea.getText().equals("") ||
jTextArea.getText().equals(Tampil))
System.exit(0);
else
{
int i =
JOptionPane.showConfirmDialog(null, "Isi file belum disimpan atau ada
perubahan!\nApakah anda ingin menyimpan perubahan?");
if (i
== 0)
Simpan_File();
else if
(i == 1)
System.exit(0);
else if
(i == 2)
return;
}
}
// Variables
declaration - do not modify
private
javax.swing.JMenu jMenu1;
private
javax.swing.JMenu jMenu2;
private
javax.swing.JMenuBar jMenuBar1;
private
javax.swing.JMenuItem jMenuItemKeluar;
private
javax.swing.JMenuItem jMenuItemNew;
private
javax.swing.JMenuItem jMenuItemOpen;
private
javax.swing.JMenuItem jMenuItemSave;
private
javax.swing.JMenuItem jMenuItemSaveAs;
private
javax.swing.JScrollPane jScrollPane1;
private
javax.swing.JTextArea jTextArea;
// End of
variables declaration
}
Terimakasih, Semoga bermanfaat.