17.thumbHeight=(int)(thumbWidth/imageRatio);
18.}else{
19.thumbWidth=(int)(thumbHeight*imageRatio);
20.}
21.
22.//draworiginalimagetothumbnailimageobjectand
23.//scaleittothenewsizeon-the-fly
24.BufferedImagethumbImage=newBufferedImage(thumbWidth,thumbHeight,BufferedImage.TYPE_INT_RGB);
25.Graphics2Dgraphics2D=thumbImage.createGraphics();
26.graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION,RenderingHints.VALUE_INTERPOLATION_BILINEAR);
27.graphics2D.drawImage(image,0,0,thumbWidth,thumbHeight,null);
28.
29.//savethumbnailimagetooutFilename
30.BufferedOutputStreamout=newBufferedOutputStream(newFileOutputStream(outFilename));
31.JPEGImageEncoderencoder=JPEGCodec.createJPEGEncoder(out);
32.JPEGEncodeParamparam=encoder.getDefaultJPEGEncodeParam(thumbImage);
33.quality=Math.max(0,Math.min(quality,100));
34.param.setQuality((float)quality/100.0f,false);
35.encoder.setJPEGEncodeParam(param);
36.encoder.encode(thumbImage);
37.out.close();
38.}
9.创建JSON格式的数据
请先阅读这篇文章了解一些细节,
并下面这个JAR文件:
json-rpc-1.0.jar(75kb)
1.importorg.json.JSONObject;
2....
3....
4.JSONObjectjson=newJSONObject();
5.json.put("city","Mumbai");
6.json.put("country","India");
7....
8.Stringoutput=json.toString();
9....
10.使用iTextJAR生成PDF
阅读这篇文章了解更多细节
1.importjava.io.File;
2.importjava.io.FileOutputStream;
3.importjava.io.OutputStream;
4.importjava.util.Date;
5.
6.importcom.lowagie.text.Document;
7.importcom.lowagie.text.Paragraph;
8.importcom.lowagie.text.pdf.PdfWriter;
9.
10.publicclassGeneratePDF{
11.
12.publicstaticvoidmain(String[]args){
13.try{
14.OutputStreamfile=newFileOutputStream(newFile("C:
\\Test.pdf"));
15.
16.Documentdocument=newDocument();
17.PdfWriter.getInstance(document,file);
18.document.open();
19.document.add(newParagraph("HelloKiran"));
20.document.add(newParagraph(newDate().toString()));
21.
22.document.close();
23.file.close();
24.
25.}catch(Exceptione){
26.
27.e.printStackTrace();
28.}
29.}
30.}
11.HTTP代理设置
阅读这篇文章了解更多细节。
1.System.getProperties().put("http.proxyHost","someProxyURL");
2.System.getProperties().put("http.proxyPort","someProxyPort");
3.System.getProperties().put("http.proxyUser","someUserName");
4.System.getProperties().put("http.proxyPassword","somePassword");
2.单实例Singleton示例
请先阅读这篇文章了解更多信息
1.publicclassSimpleSingleton{
2.privatestaticSimpleSingletonsingleInstance=newSimpleSingleton();
3.
4.//Markingdefaultconstructorprivate
5.//toavoiddirectinstantiation.
6.privateSimpleSingleton(){
7.}
8.
9.//GetinstanceforclassSimpleSingleton
10.publicstaticSimpleSingletongetInstance(){
11.
12.returnsingleInstance;
13.}
14.}
另一种实现
1.publicenumSimpleSingleton{
2.INSTANCE;
3.publicvoiddoSomething(){
4.}
5.}
6.
7.//CallthemethodfromSingleton:
8.SimpleSingleton.INSTANCE.doSomething();
13.抓屏程序
阅读这篇文章获得更多信息。
1.importjava.awt.Dimension;
2.importjava.awt.Rectangle;
3.importjava.awt.Robot;
4.importjava.awt.Toolkit;
5.importjava.awt.image.BufferedImage;
6.importjavax.imageio.ImageIO;
7.importjava.io.File;
8.
9....
10.
11.publicvoidcaptureScreen(StringfileName)throwsException{
12.
13.DimensionscreenSize=Toolkit.getDefaultToolkit().getScreenSize();
14.RectanglescreenRectangle=newRectangle(screenSize);
15.Robotrobot=newRobot();
16.BufferedImageimage=robot.createScreenCapture(screenRectangle);
17.ImageIO.write(image,"png",newFile(fileName));
18.
19.}
20....
14.列出文件和目录
1.Filedir=newFile("directoryName");
2.String[]children=dir.list();
3.if(children==null){
4.//Eitherdirdoesnotexistorisnotadirectory
5.}else{
6.for(inti=0;i7.//Getfilenameoffileordirectory
8.Stringfilename=children[i];
9.}
10.}
11.
12.//Itisalsopossibletofilterthelistofreturnedfiles.
13.//Thisexampledoesnotreturnanyfilesthatstartwith`.'.
14.FilenameFilterfilter=newFilenameFilter(){
15.publicbooleanaccept(Filedir,Stringname){
16.return!
name.startsWith(".");
17.}
18.};
19.children=dir.list(filter);
20.
21.//ThelistoffilescanalsoberetrievedasFileobjects
22.File[]files=dir.listFiles();
23.
24.//Thisfilteronlyreturnsdirectories
25.FileFilterfileFilter=newFileFilter(){
26.publicbooleanaccept(Filefile){
27.returnfile.isDirectory();
28.}
29.};
30.files=dir.listFiles(fileFilter);
15.创建ZIP和JAR文件
1.importjava.util.zip.*;
2.importjava.io.*;
3.
4.publicclassZipIt{
5.publicstaticvoidmain(Stringargs[])throwsIOException{
6.if(args.length<2){
7.System.err.println("usage:
javaZipItZip.zipfile1file2file3");
8.System.exit(-1);
9.}
10.FilezipFile=newFile(args[0]);
11.if(zipFile.exists()){
12.System.err.println("Zipfilealreadyexists,pleasetryanother");
13.System.exit(-2);
14.}
15.FileOutputStreamfos=newFileOutputStream(zipFile);
16.ZipOutputStreamzos=newZipOutputStream(fos);
17.intbytesRead;
18.byte[]buffer=newbyte[1024];
19.CRC32crc=newCRC32();
20.for(inti=1,n=args.length;i21.Stringname=args[i];
22.Filefile=newFile(name);
23.if(!
file.exists()){
24.System.err.println("Skipping:
"+name);
25.continue;
26.}
27.BufferedInputStreambis=newBufferedInputStream(
28.newFileInputStream(file));
29.crc.reset();
30.while((bytesRead=bis.read(buffer))!
=-1){
31.crc.update(buffer,0,bytesRead);
32.}
33.bis.close();
34.//Resettobeginningofinputstream
35.bis=newBufferedInputStream(
36.new