1. 字符串有整型的相互转换

 
  1. String a = String.valueOf(2);   //integer to numeric string  

  2. int i = Integer.parseInt(a); //numeric string to an int

2. 向文件末尾添加内容

 
  1. BufferedWriter out = null;  

  2. try {  

  3.    out = new BufferedWriter(new FileWriter(”filename”, true));  

  4.    out.write(”aString”);  

  5. } catch (IOException e) {  

  6. // error processing code  

  7. } finally {  

  8. if (out != null) {  

  9.        out.close();  

  10.    }  

  11. }  

3. 得到当前方法的名字

 
  1. String methodName = Thread.currentThread().getStackTrace()[1].getMethodName();  

4. 转字符串到日期

 
  1. java.util.Date = java.text.DateFormat.getDateInstance().parse(date String);  

或者是:

 
  1. SimpleDateFormat format = new SimpleDateFormat( "dd.MM.yyyy" );  

  2. Date date = format.parse( myString );  

5. 使用JDBC链接Oracle

 
  1. publicclass OracleJdbcTest  

  2. {  

  3.    String driverClass = "oracle.jdbc.driver.OracleDriver";  

  4.    Connection con;  

  5. publicvoid init(FileInputStream fs) throws ClassNotFoundException, SQLException, FileNotFoundException, IOException  

  6.    {  

  7.        Properties props = new Properties();  

  8.        props.load(fs);  

  9.        String url = props.getProperty("db.url");  

  10.        String userName = props.getProperty("db.user");  

  11.        String password = props.getProperty("db.password");  

  12.        Class.forName(driverClass);  

  13.        con=DriverManager.getConnection(url, userName, password);  

  14.    }  

  15. publicvoid fetch() throws SQLException, IOException  

  16.    {  

  17.        PreparedStatement ps = con.prepareStatement("select SYSDATE from dual");  

  18.        ResultSet rs = ps.executeQuery();  

  19. while (rs.next())  

  20.        {  

  21. // do the thing you do  

  22.        }  

  23.        rs.close();  

  24.        ps.close();  

  25.    }  

  26. publicstaticvoid main(String[] args)  

  27.    {  

  28.        OracleJdbcTest test = new OracleJdbcTest();  

  29.        test.init();  

  30.        test.fetch();  

  31.    }  

  32. }  

6. 把 Java util.Date 转成 sql.Date

 
  1. java.util.Date utilDate = new java.util.Date();  

  2. java.sql.Date sqlDate = new java.sql.Date(utilDate.getTime());  

7. 使用NIO进行快速的文件拷贝

 
  1. publicstaticvoid fileCopy( File in, File out )  

  2. throws IOException  

  3.    {  

  4.        FileChannel inChannel = new FileInputStream( in ).getChannel();  

  5.        FileChannel outChannel = new FileOutputStream( out ).getChannel();  

  6. try

  7.        {  

  8. //          inChannel.transferTo(0, inChannel.size(), outChannel);      // original -- apparently has trouble copying large files on Windows  

  9. // magic number for Windows, 64Mb - 32Kb)  

  10. int maxCount = (64 * 1024 * 1024) - (32 * 1024);  

  11. long size = inChannel.size();  

  12. long position = 0;  

  13. while ( position < size )  

  14.            {  

  15.               position += inChannel.transferTo( position, maxCount, outChannel );  

  16.            }  

  17.        }  

  18. finally

  19.        {  

  20. if ( inChannel != null )  

  21.            {  

  22.               inChannel.close();  

  23.            }  

  24. if ( outChannel != null )  

  25.            {  

  26.                outChannel.close();  

  27.            }  

  28.        }  

  29.    }  

8. 创建图片的缩略图

 
  1. privatevoid createThumbnail(String filename, int thumbWidth, int thumbHeight, int quality, String outFilename)  

  2. throws InterruptedException, FileNotFoundException, IOException  

  3.    {  

  4. // load p_w_picpath from filename  

  5.        Image p_w_picpath = Toolkit.getDefaultToolkit().getImage(filename);  

  6.        MediaTracker mediaTracker = new MediaTracker(new Container());  

  7.        mediaTracker.addImage(p_w_picpath, 0);  

  8.        mediaTracker.waitForID(0);  

  9. // use this to test for errors at this point: System.out.println(mediaTracker.isErrorAny());  

  10. // determine thumbnail size from WIDTH and HEIGHT  

  11. double thumbRatio = (double)thumbWidth / (double)thumbHeight;  

  12. int p_w_picpathWidth = p_w_picpath.getWidth(null);  

  13. int p_w_picpathHeight = p_w_picpath.getHeight(null);  

  14. double p_w_picpathRatio = (double)p_w_picpathWidth / (double)p_w_picpathHeight;  

  15. if (thumbRatio < p_w_picpathRatio) {  

  16.            thumbHeight = (int)(thumbWidth / p_w_picpathRatio);  

  17.        } else {  

  18.            thumbWidth = (int)(thumbHeight * p_w_picpathRatio);  

  19.        }  

  20. // draw original p_w_picpath to thumbnail p_w_picpath object and  

  21. // scale it to the new size on-the-fly  

  22.        BufferedImage thumbImage = new BufferedImage(thumbWidth, thumbHeight, BufferedImage.TYPE_INT_RGB);  

  23.        Graphics2D graphics2D = thumbImage.createGraphics();  

  24.        graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);  

  25.        graphics2D.drawImage(p_w_picpath, 0, 0, thumbWidth, thumbHeight, null);  

  26. // save thumbnail p_w_picpath to outFilename  

  27.        BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(outFilename));  

  28.        JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);  

  29.        JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(thumbImage);  

  30.        quality = Math.max(0, Math.min(quality, 100));  

  31.        param.setQuality((float)quality / 100.0f, false);  

  32.        encoder.setJPEGEncodeParam(param);  

  33.        encoder.encode(thumbImage);  

  34.        out.close();  

  35.    }  

13. 抓屏程序

阅读这篇 获得更多信息。

 
  1. import java.awt.Dimension;  

  2. import java.awt.Rectangle;  

  3. import java.awt.Robot;  

  4. import java.awt.Toolkit;  

  5. import java.awt.p_w_picpath.BufferedImage;  

  6. import javax.p_w_picpathio.ImageIO;  

  7. import java.io.File;  

  8. ...  

  9. publicvoid captureScreen(String fileName) throws Exception {  

  10.   Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();  

  11.   Rectangle screenRectangle = new Rectangle(screenSize);  

  12.   Robot robot = new Robot();  

  13.   BufferedImage p_w_picpath = robot.createScreenCapture(screenRectangle);  

  14.   ImageIO.write(p_w_picpath, "png", new File(fileName));  

  15. }  

  16. ...  

14. 列出文件和目录

 
  1. File dir = new File("directoryName");  

  2.  String[] children = dir.list();  

  3. if (children == null) {  

  4. // Either dir does not exist or is not a directory  

  5.  } else {  

  6. for (int i=0; i < children.length; i++) {  

  7. // Get filename of file or directory  

  8.          String filename = children[i];  

  9.      }  

  10.  }  

  11. // It is also possible to filter the list of returned files.  

  12. // This example does not return any files that start with `.'.  

  13.  FilenameFilter filter = new FilenameFilter() {  

  14. publicboolean accept(File dir, String name) {  

  15. return !name.startsWith(".");  

  16.      }  

  17.  };  

  18.  children = dir.list(filter);  

  19. // The list of files can also be retrieved as File objects  

  20.  File[] files = dir.listFiles();  

  21. // This filter only returns directories  

  22.  FileFilter fileFilter = new FileFilter() {  

  23. publicboolean accept(File file) {  

  24. return file.isDirectory();  

  25.      }  

  26.  };  

  27.  files = dir.listFiles(fileFilter);  

15. 创建ZIP和JAR文件

 
  1. import java.util.zip.*;  

  2. import java.io.*;  

  3. publicclass ZipIt {  

  4. publicstaticvoid main(String args[]) throws IOException {  

  5. if (args.length < 2) {  

  6.            System.err.println("usage: java ZipIt Zip.zip file1 file2 file3");  

  7.            System.exit(-1);  

  8.        }  

  9.        File zipFile = new File(args[0]);  

  10. if (zipFile.exists()) {  

  11.            System.err.println("Zip file already exists, please try another");  

  12.            System.exit(-2);  

  13.        }  

  14.        FileOutputStream fos = new FileOutputStream(zipFile);  

  15.        ZipOutputStream zos = new ZipOutputStream(fos);  

  16. int bytesRead;  

  17. byte[] buffer = newbyte[1024];  

  18.        CRC32 crc = new CRC32();  

  19. for (int i=1, n=args.length; i < n; i++) {  

  20.            String name = args[i];  

  21.            File file = new File(name);  

  22. if (!file.exists()) {  

  23.                System.err.println("Skipping: " + name);  

  24. continue;  

  25.            }  

  26.            BufferedInputStream bis = new BufferedInputStream(  

  27. new FileInputStream(file));  

  28.            crc.reset();  

  29. while ((bytesRead = bis.read(buffer)) != -1) {  

  30.                crc.update(buffer, 0, bytesRead);  

  31.            }  

  32.            bis.close();  

  33. // Reset to beginning of input stream  

  34.            bis = new BufferedInputStream(  

  35. new FileInputStream(file));  

  36.            ZipEntry entry = new ZipEntry(name);  

  37.            entry.setMethod(ZipEntry.STORED);  

  38.            entry.setCompressedSize(file.length());  

  39.            entry.setSize(file.length());  

  40.            entry.setCrc(crc.getValue());  

  41.            zos.putNextEntry(entry);  

  42. while ((bytesRead = bis.read(buffer)) != -1) {  

  43.                zos.write(buffer, 0, bytesRead);  

  44.            }  

  45.            bis.close();  

  46.        }  

  47.        zos.close();  

  48.    }  

  49. }  

20. 改变数组的大小

 
  1. /**

  2. * Reallocates an array with a new size, and copies the contents

  3. * of the old array to the new array.

  4. * @param oldArray  the old array, to be reallocated.

  5. * @param newSize   the new array size.

  6. * @return          A new array with the same contents.

  7. */

  8. privatestatic Object resizeArray (Object oldArray, int newSize) {  

  9. int oldSize = java.lang.reflect.Array.getLength(oldArray);  

  10.   Class elementType = oldArray.getClass().getComponentType();  

  11.   Object newArray = java.lang.reflect.Array.newInstance(  

  12.         elementType,newSize);  

  13. int preserveLength = Math.min(oldSize,newSize);  

  14. if (preserveLength > 0)  

  15.      System.arraycopy (oldArray,0,newArray,0,preserveLength);  

  16. return newArray;  

  17. }  

  18. // Test routine for resizeArray().  

  19. publicstaticvoid main (String[] args) {  

  20. int[] a = {

    1,2,3};  

  21.   a = (int[])resizeArray(a,5);  

  22.   a[3] = 4;  

  23.   a[4] = 5;  

  24. for (int i=0; i<a.length; i++)  

  25.      System.out.println (a[i]);  

  26. }

原文链接: