java创建临时文件示例
Java创建临时文件示例,在实际的程序设计中经常会用到临时文件,用于存储临时数据等。Java 语言也支持临时文件操作,本例演示了如何创建一个临时文件,并在其中存储数据。如下图所示,当按下“Create a TempFile”按钮后,程序即创建一个“TempFile.tmp”的临时文件并将窗口上部的所示文本存储在其中。您可以查看自己系统上的临时文件夹,如可能是“c:\\Windows\\temp”,会多出一个新的文件,但并非“TempFile.tmp”,一般是“TempFile*.tmp”,如“TempFile22023.tmp”。这是系统为了防止文件重名。
实现方法:本例的实现使用了java.io.File 类中的createTempFile方法,其原型如下:
1public static File createTempFile(String prefix,String suffix) throws IOException
2public static File createTempFile(String prefix,String suffix,File dir) throws IOException
其中参数prefix 表示临时文件名的前几个字符;参数suffix 表示后缀,必须是“.tmp”或“null”,当是null 时,系统自动添上.tmp;参数dir 表示临时文件夹位于此目录下。本例中,将使用第一种形式的createTempFile方法。另外,还使用了File 类中的deleteOnExit方法,使得当程序结束退出时删除临时文件,该方法经常和临时文件合用。其原型如下:
1public void deleteOnExit
程序代码的编写:
1.新建一个Project,取名为JTempFileDemo。
2.新建一个application,取名为JTempFileDemo;主窗口取名为MainFrame,标题为JTempFileDemo。
3.在MainFrame 类的设计器中添加一个JButton 组件置于窗口的下部和一个JScrollPane 组件置于窗口的中部,并子JScrollPane 组件中添加一个JTextArea 组件。具体代码如下:
1public class MainFrame extends JFrame {
2private JPanel contentPane;
3private BorderLayout borderLayout1 = new BorderLayout;
4//添加的各组件
5private JScrollPane jScrollPane1 = new JScrollPane;
6private JTextArea jTextArea1 = new JTextArea;
7private JButton jButton1 = new JButto;
8…..
9}
4.编写MainFrame 类的初始化方法jbInit,设置各组件的初始属性,并添加JButtton 组件的事件监听器,代码如下:
01private void jbInit throws Exception {
02//设置各组件的属性,并在窗口中添加这些组件
03//setIconImage(Toolkit.getDefaultToolkit.createImage(MainFrame.class.getResource("[Your Icon]")));
04contentPane = (JPanel) this.getContentPane;
05contentPane.setLayout(borderLayout1);
06this.setSize(new Dimension(400, 162));
07this.setTitle("JTempFileDemo");
08jButton1.setText("Create a TempFile");
09jButton1.addActionListener(new java.awt.event.ActionListener() {//添加JButton 组件的事件监听器
10public void actionPerformed(ActionEvent e) {
11jButton1_actionPerformed(e);
12}
13});
14contentPane.add(jScrollPane1, BorderLayout.CENTER);
15contentPane.add(jButton1, BorderLayout.SOUTH);
16jScrollPane1.getViewport.add(jTextArea1, null);
17}
5.编写JButton 组件的事件处理方法,当按钮按下时,创建一个临时文件,并把JTextArea 中的文本存入该临时文件中,具体的代码如下:
view sourceprint?01void jButton1_actionPerformed(ActionEvent e) {
02File tempFile=null; //申明文件对象
03FileOutputStream fos=null; //申明文件输出流
04PrintStream PS=null; //申明打印流
05//创建临时文件并存储数据
06try{
07tempFile = File.createTempFile("TempFile",".tmp"); //创建一个临时文件
08//创建文件输出流和打印流
09fos = new FileOutputStream(tempFile);
10ps = new PrintStream(fos);
11//将JTextArea 组件中的文本存入临时文件中
12ps.print(this.jTextArea1.getText);
13ps.close; //关闭流
14tempFile.deleteOnExit;当程序退出时,删除临时文件
15}catch(Exception err){
16err.printStackTrace;
17}
18}
上一篇:java的继承static初始化
下一篇:初见python你对它了解多少?
¥29.00
¥399.00
¥498.00
¥299.00