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 文件:json-rpc-1.0.jar (75 kb)
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();
}
}
}
|