| 1 52 53 package com.go.trove.io; 54 55 import java.io.*; 56 import java.util.*; 57 58 66 public class TemporaryFile extends RandomAccessFile { 67 73 public static RandomAccessFile createTemporaryFile 74 (String prefix, String suffix, File directory) throws IOException { 75 76 File file = File.createTempFile(prefix, suffix, directory); 77 file.deleteOnExit(); 78 return new TemporaryFile(file); 79 } 80 81 87 public static RandomAccessFile createTemporaryFile 88 (String prefix, String suffix) throws IOException { 89 90 return createTemporaryFile(prefix, suffix, null); 91 } 92 93 private File mFile; 94 95 private TemporaryFile(File file) throws IOException { 96 super(file, "rw"); 97 mFile = file; 98 } 99 100 public void close() throws IOException { 101 try { 102 super.close(); 103 } 104 finally { 105 mFile.delete(); 106 } 107 } 108 109 protected void finalize() throws IOException { 110 close(); 111 } 112 } 113 | Popular Tags |