6. 把 Java util.Date 转成 sql.Date
1 2 | java.util.Date utilDate = new java.util.Date(); java.sql.Date sqlDate = new java.sql.Date(utilDate.getTime()); |
7. 使用NIO进行快速的文件拷贝
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | public static void fileCopy( File in, File out ) throws IOException { FileChannel inChannel = new FileInputStream( in ).getChannel(); FileChannel outChannel = new FileOutputStream( out ).getChannel(); try { // inChannel.transferTo(0, inChannel.size(), outChannel); // original -- apparently has trouble copying large files on Windows // magic number for Windows, 64Mb - 32Kb) int maxCount = ( 64 * 1024 * 1024 ) - ( 32 * 1024 ); long size = inChannel.size(); long position = 0 ; while ( position < size ) { position += inChannel.transferTo( position, maxCount, outChannel ); } } finally { if ( inChannel != null ) { inChannel.close(); } if ( outChannel != null ) { outChannel.close(); } } } |
8. 创建图片的缩略图
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | private void createThumbnail(String filename, int thumbWidth, int thumbHeight, int quality, String outFilename) throws InterruptedException, FileNotFoundException, IOException { // load p_w_picpath from filename Image p_w_picpath = Toolkit.getDefaultToolkit().getImage(filename); MediaTracker mediaTracker = new MediaTracker( new Container()); mediaTracker.addImage(p_w_picpath, 0 ); mediaTracker.waitForID( 0 ); // use this to test for errors at this point: System.out.println(mediaTracker.isErrorAny()); // determine thumbnail size from WIDTH and HEIGHT double thumbRatio = ( double )thumbWidth / ( double )thumbHeight; int p_w_picpathWidth = p_w_picpath.getWidth( null ); int p_w_picpathHeight = p_w_picpath.getHeight( null ); double p_w_picpathRatio = ( double )p_w_picpathWidth / ( double )p_w_picpathHeight; if (thumbRatio < p_w_picpathRatio) { thumbHeight = ( int )(thumbWidth / p_w_picpathRatio); } else { thumbWidth = ( int )(thumbHeight * p_w_picpathRatio); } // draw original p_w_picpath to thumbnail p_w_picpath object and // scale it to the new size on-the-fly BufferedImage thumbImage = new BufferedImage(thumbWidth, thumbHeight, BufferedImage.TYPE_INT_RGB); Graphics2D graphics2D = thumbImage.createGraphics(); graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR); graphics2D.drawImage(p_w_picpath, 0 , 0 , thumbWidth, thumbHeight, null ); // save thumbnail p_w_picpath to outFilename BufferedOutputStream out = new BufferedOutputStream( new FileOutputStream(outFilename)); JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out); JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(thumbImage); quality = Math.max( 0 , Math.min(quality, 100 )); param.setQuality(( float )quality / 100 .0f, false ); encoder.setJPEGEncodeParam(param); encoder.encode(thumbImage); out.close(); } |
9. 创建 JSON 格式的数据
请先阅读 了解一些细节,
并下面这个JAR 文件: 1 2 3 4 5 6 7 8 9 | import org.json.JSONObject; ... ... JSONObject json = new JSONObject(); json.put( "city" , "Mumbai" ); json.put( "country" , "India" ); ... String output = json.toString(); ... |
10. 使用iText JAR生成PDF
阅读这篇 了解更多细节
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | import java.io.File; import java.io.FileOutputStream; import java.io.OutputStream; import java.util.Date; import com.lowagie.text.Document; import com.lowagie.text.Paragraph; import com.lowagie.text.pdf.PdfWriter; public class GeneratePDF { public static void main(String[] args) { try { OutputStream file = new FileOutputStream( new File( "C:\\Test.pdf" )); Document document = new Document(); PdfWriter.getInstance(document, file); document.open(); document.add( new Paragraph( "Hello Kiran" )); document.add( new Paragraph( new Date().toString())); document.close(); file.close(); } catch (Exception e) { e.printStackTrace(); } } } |