applet访问客户端
改变/jre1.5.0_06/lib/security/java.security。打开文件里面有policy.url.1和policy.url.2,我们可以创建自己的policy.url.3,我们需要一个.policy文件,此文件的作用指定对客户端的文件的操作权限。可以使用policytool工具自己创建.policy.
一个扩展自Applet的类,里边有个方法写文件,一个方法读文件。
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class MyFrame extends JFrame implements ActionListener{
JButton btRead = new JButton("Read");
JButton btWrite = new JButton("Write");
JTextArea txt1 = new JTextArea(null,8,35);
JScrollPane jspPanel = new JScrollPane(txt1,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
JPanel jp = new JPanel();
public MyFrame(String title) {
super(title);
}
public void init()
{
Container con = this.getContentPane();
con.setLayout(new BorderLayout());
jp.add(btRead);
jp.add(btWrite);
con.add(jp,BorderLayout.NORTH);
con.add(jspPanel,BorderLayout.CENTER);
btRead.addActionListener(this);
btWrite.addActionListener(this);
}
public void actionPerformed(ActionEvent arg0) {
if(arg0.getActionCommand().equals("Read"))
{
BufferedReader in = null;
try {
in = new BufferedReader(new FileReader("d://dbase//humor.txt"));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
String s;
try {
while((s=in.readLine())!=null)
{
txt1.append(s+"/n");
}
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if(arg0.getActionCommand().equals("Write"))
{
PrintWriter out = null;
try {
out = new PrintWriter(new FileWriter("d://dbase//humor.txt"));
} catch (IOException e) {
e.printStackTrace();
}
out.println("it is a humor");
out.close();
txt1.append("Write OK/n");
}
}
}