最近由於學習編寫 Android應用程式 所以再次學習 Java
發現一些功能不能直接使用,而是需要使用 映射(Reflection) 來執行
在下因此尋找 映射 資料
發現一些功能不能直接使用,而是需要使用 映射(Reflection) 來執行
在下因此尋找 映射 資料
透過錯誤經驗,分享科技與遊戲當中的技術,提醒自己及瀏覽此網誌的人,避免踏進相同的陷阱。
本網誌只提供技術概要及合法軟件連結(如有)。
如閣下因下載、安裝、設定資料等操作,導致任何損失,請自行承擔風險及處理,在下不會負責。
import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStreamWriter; import java.net.URL; import java.net.URLConnection;
import java.io.DataOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import sun.net.TelnetOutputStream; import sun.net.ftp.FtpClient;
import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.util.zip.ZipEntry; import java.util.zip.ZipInputStream;
public static void decompress(File source, File destination) throws IOException{
if (!destination.exists() || destination.isDirectory()){
destination.mkdirs();
ZipInputStream zis = new ZipInputStream(new FileInputStream(source));
byte[] buffer = new byte[1024];
for (ZipEntry zip; (zip = zis.getNextEntry()) != null;){
File file = new File(destination, zip.getName());
if (zip.isDirectory()){
file.mkdirs();
} else {
FileOutputStream fos = new FileOutputStream(file);
for (int length; (length = zis.read(buffer)) > 0;){
fos.write(buffer, 0, length);
}
fos.close();
}
zis.closeEntry();
}
zis.close();
}
}
import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.util.zip.Deflater; import java.util.zip.ZipEntry; import java.util.zip.ZipOutputStream;
public static void compress(File source, File destination) throws IOException{
compress(source, destination, null, Deflater.DEFAULT_COMPRESSION);
}
public static void compress(File source, File destination, String comment, int level) throws IOException{
ZipOutputStream zos = new ZipOutputStream(new FileOutputStream(destination));
zos.setComment(comment);
zos.setLevel(level);
compress(zos, source.getParent(), source);
zos.flush();
zos.close();
}
private static void compress(ZipOutputStream zos, String rootpath, File source) throws IOException{
String filename = source.toString().substring(rootpath.length() + 1);
if (source.isFile()){
zos.putNextEntry(new ZipEntry(filename));
FileInputStream fis = new FileInputStream(source);
byte[] buffer = new byte[1024];
for (int length; (length = fis.read(buffer)) > 0;){
zos.write(buffer, 0, length);
}
fis.close();
zos.closeEntry();
} else if (source.isDirectory()){
zos.putNextEntry(new ZipEntry(filename + "/"));
zos.closeEntry();
File[] files = source.listFiles();
for (File file : files){
compress(zos, rootpath, file);
}
}
}
import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException;
import java.awt.Toolkit; import java.awt.datatransfer.DataFlavor; import java.awt.datatransfer.Transferable; import java.awt.datatransfer.UnsupportedFlavorException; import java.awt.image.BufferedImage; import java.io.IOException;
import java.awt.AWTException; import java.awt.Rectangle; import java.awt.Robot; import java.awt.Toolkit; import java.awt.image.BufferedImage; import java.io.IOException;
import java.io.IOException; import java.net.ConnectException; import java.net.URL; import java.io.InputStream; import java.io.FileOutputStream;
import java.awt.image.BufferedImage; import java.awt.Color;
import java.io.File