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

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

2.向文件末尾添加内容

BufferedWriter out = null;
try{
out = new BufferedWriter(new FileWriter(”filename”,true));
Out.write(”aString”);
}catch(IOException e) {
// error processing code }finally{
if(out != null) {
out.close();
}
}

3.得到当前方法的名字

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

4.转字符串到日期

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

或者是:

SimpleDateFormat format =new SimpleDateFormat("dd.MM.yyyy");
Date date = format.parse( myString );

5.使用JDBC链接Oracle

Public class OracleJdbcTest {
String driverClass ="oracle.jdbc.driver.OracleDriver";
Connection con; Public void init(FileInputStream fs) throws ClassNotFoundException,SQLException, FileNotFoundException, IOException {
Properties props = new Properties();
props.load(fs);
String url = props.getProperty("db.url");
String userName = props.getProperty("db.user");
String password = props.getProperty("db.password");
Class.forName(driverClass); con = DriverManager.getConnection(url, userName, password);
} Public void fetch() throws SQLException, IOException {
PreparedStatement ps = con.prepareStatement("select SYSDATE from dual");
ResultSet rs = ps.executeQuery(); while(rs.next()) {
// do the thing you do
}
rs.close();
ps.close();
} Public static void main(String[] args) {
OracleJdbcTest test = new OracleJdbcTest();
test.init();
test.fetch();
}
}

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

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

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

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.创建图片的缩略图

    private void create Thumbnail(String filename,int thumbWidth,int thumbHeight,int quality, String outFilename)
throws InterruptedException, FileNotFoundException, IOException {
// load image from filename
Image image = Toolkit.getDefaultToolkit().getImage(filename);
MediaTracker mediaTracker = new MediaTracker(newContainer());
mediaTracker.addImage(image,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 imageWidth = image.getWidth(null);
int imageHeight = image.getHeight(null);
double imageRatio = (double)imageWidth / (double)imageHeight;
if(thumbRatio < imageRatio) {
thumbHeight = (int)(thumbWidth / imageRatio);
}else{
thumbWidth = (int)(thumbHeight * imageRatio);
} // draw original image to thumbnail image 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(image,0,0, thumbWidth, thumbHeight,null); // save thumbnail image 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 格式的数据

import org.json.JSONObject;
...
...
JSONObject json =new JSONObject();
json.put("city","Mumbai");
json.put("country","India");
...
String output = json.toString();
...

10.使用iText JAR生成PDF

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(newFile("C:\\Test.pdf")); Document document = new Document();
PdfWriter.getInstance(document, file);
document.open();
document.add(new Paragraph("Hello Kiran"));
document.add(new Paragraph(newDate().toString())); document.close();
file.close(); } catch(Exception e) { e.printStackTrace();
}
}
}

11.HTTP 代理设置

System.getProperties().put("http.proxyHost","someProxyURL");
System.getProperties().put("http.proxyPort","someProxyPort");
System.getProperties().put("http.proxyUser","someUserName");
System.getProperties().put("http.proxyPassword","somePassword");

12.单实例Singleton 示例

public class SimpleSingleton {
private static SimpleSingleton singleInstance = new SimpleSingleton(){
//Marking default constructor private
//to avoid direct instantiation. private SimpleSingleton() {
} //Get instance for class SimpleSingleton
public static SimpleSingleton getInstance() {
return singleInstance;
}
}

另一种实现:

public enum SimpleSingleton {
INSTANCE;
public void doSomething() {
}
} //Call the method from Singleton:
SimpleSingleton.INSTANCE.doSomething();

13.抓屏程序

import java.awt.Dimension;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import javax.imageio.ImageIO;
import java.io.File; ...
public void captureScreen(String fileName)throws Exception { Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Rectangle screenRectangle = new Rectangle(screenSize);
Robot robot = new Robot();
BufferedImage image = robot.createScreenCapture(screenRectangle);
ImageIO.write(image,"png",newFile(fileName)); }

14.列出文件和目录

File dir = new File("directoryName");
String[] children = dir.list();
if(children == null) {
// Either dir does not exist or is not a directory
else{
  for(int i = 0; i < children.length; i++) {
  // Get filename of file or directory
  String filename = children[i];
  }
} // It is also possible to filter the list of returned files.
// This example does not return any files that start with `.’.
FilenameFilter filter = new FilenameFilter() {
public boolean accept(File dir, String name) {
  return !name.startsWith(".");
  }
};
children = dir.list(filter);
// The list of files can also be retrieved as File objects
File[] files = dir.listFiles(); // This filter only returns directories
FileFilter fileFilter = new FileFilter() {
  public boolean accept(File file) {
  return file.isDirectory();
  }
};
files = dir.listFiles(fileFilter);

15.创建ZIP和JAR文件

import java.util.zip.*;
import java.io.*; public class ZipIt {
  public static void main(String args[]) throws IOException {
    if(args.length < 2) {
      System.err.println("usage: java ZipIt Zip.zip file1 file2 file3");
      System.exit(-1);
    }
    File zipFile = new File(args[0]);
    if(zipFile.exists()) {
      System.err.println("Zip file already exists, please try another");
      System.exit(-2);
    }
    FileOutputStream fos = new FileOutputStream(zipFile);
    ZipOutputStream zos = new ZipOutputStream(fos);
    int bytesRead;
    byte[] buffer = new byte[1024];
    CRC32 crc = new CRC32();
    for(int i = 1, n = args.length; i < n; i++) {
    String name = args[i];
    File file = new File(name);
    if(!file.exists()) {
      System.err.println("Skipping: "+ name);
      continue;
    }
    BufferedInputStream bis = new BufferedInputStream(new FileInputStream(file));
    crc.reset();
    while((bytesRead = bis.read(buffer)) != -1) {
      crc.update(buffer,0, bytesRead);
    }
    bis.close();
    // Reset to beginning of input stream
    bis = new BufferedInputStream(
    new FileInputStream(file));
    ZipEntry entry = new ZipEntry(name);
    entry.setMethod(ZipEntry.STORED);
    entry.setCompressedSize(file.length());
    entry.setSize(file.length());
    entry.setCrc(crc.getValue());
    zos.putNextEntry(entry);
    while((bytesRead = bis.read(buffer)) != -1) {
    zos.write(buffer,0, bytesRead);
  }
  bis.close();
 }
 zos.close();
}
}

16.解析/读取XML 文件

XML文件:

<?xml version="1.0"?>
<students>
<student>
      <name>John</name>
      <grade>B</grade>
      <age>12</age>
     </student>
     <student>
      <name>Mary</name>
      <grade>A</grade>
      <age>11</age>
     </student>
     <student>
      <name>Simon</name>
      <grade>A</grade>
      <age>18</age>
     </student>
   </students>
//Java代码
package net.viralpatel.java.xmlparser; import java.io.File;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory; import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList; public class XMLParser { public void getAllUserNames(String fileName) {
  try {
    DocumentBuilderFactory dbf = DocumentBuilderFactory.new Instance();
    DocumentBuilder db = dbf.new DocumentBuilder();
    File file = new File(fileName);
    if(file.exists()) {
    Document doc = db.parse(file);
    Element docEle = doc.getDocumentElement();     // Print root element of the document
    System.out.println("Root element of the document: " + docEle.getNodeName());     NodeList studentList = docEle.getElementsByTagName("student");     // Print total student elements in document
    System.out .println("Total students: "+ studentList.getLength());     if(studentList !=null&& studentList.getLength() >0) {
    for(inti =0; i < studentList.getLength(); i++) {     Node node = studentList.item(i);
    if(node.getNodeType() == Node.ELEMENT_NODE) {     System.out .println("=====================");     Element e = (Element) node;
    NodeList nodeList = e.getElementsByTagName("name");
    System.out.println("Name: " + nodeList.item(0).getChildNodes().item(0).getNodeValue());     nodeList = e.getElementsByTagName("grade");
    System.out.println("Grade: "+ nodeList.item(0).getChildNodes().item(0).getNodeValue());     nodeList = e.getElementsByTagName("age");
    System.out.println("Age: "+ nodeList.item(0).getChildNodes().item(0).getNodeValue());
   }
  }
} else {
  System.exit(1);
  }
 }
} catch (Exception e) {
  System.out.println(e);
}
}
public static void main(String[] args) {
XMLParser parser = new XMLParser();
parser.getAllUserNames("c:\\test.xml");
}
}

17.把 Array 转换成 Map

import java.util.Map;
import org.apache.commons.lang.ArrayUtils; public class Main {
public static void main(String[] args) {
String[ ][ ] countries = { {"United States","New York"}, {"United Kingdom","London"}, {"Netherland","Amsterdam"}, {"Japan","Tokyo"},{"France","Paris"} }; Map countryCapitals = ArrayUtils.toMap(countries); System.out.println("Capital of Japan is "+ countryCapitals.get("Japan"));
System.out.println("Capital of France is "+ countryCapitals.get("France"));
}
}

18.发送邮件

import javax.mail.*;
import javax.mail.internet.*;
import java.util.*; public void postMail(String recipients[ ],String subject,String message,String from)throws MessagingException {
  booleandebug =false;   //Set the host smtp address
  Properties props = new Properties();
  props.put("mail.smtp.host","smtp.example.com");   // create some properties and get the default Session
  Session session = Session.getDefaultInstance(props,null);
  session.setDebug(debug);   // create a message
  Message msg = new MimeMessage(session);   // set the from and to address
  InternetAddress addressFrom = new InternetAddress(from);
  msg.setFrom(addressFrom);   InternetAddress[] addressTo = new InternetAddress[recipients.length];
  for(inti =0; i < recipients.length; i++){
    addressTo[i] = new InternetAddress(recipients[i]);
  }
  msg.setRecipients(Message.RecipientType.TO, addressTo);   // Optional : You can also set your custom headers in the Email if you Want
  msg.addHeader("MyHeaderName","myHeaderValue");   // Setting the Subject and Content Type
  msg.setSubject(subject);
  msg.setContent(message,"text/plain");
  Transport.send(msg);
}

19.发送代数据的HTTP 请求

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URL; public class Main {
public static void main(String[] args) {
try{
  URL my_url = new URL("http://cocre.com/");
  BufferedReader br = new BufferedReader(new InputStreamReader(my_url.openStream()));
  String strTemp ="";
  while(null != (strTemp = br.readLine())){
  System.out.println(strTemp);
 }
}catch(Exception ex) {
  ex.printStackTrace();
 }
}
}

20. 改变数组的大小

/**
* Reallocates an array with a new size, and copies the contents
* of the old array to the new array.
* @param oldArray the old array, to be reallocated.
* @param newSize the new array size.
* @return A new array with the same contents.
*/
private static Object resizeArray(Object oldArray,int newSize) {
  int oldSize = java.lang.reflect.Array.getLength(oldArray);
  Class elementType = oldArray.getClass().getComponentType();
  Object newArray = java.lang.reflect.Array.newInstance(elementType,newSize);
  int preserveLength = Math.min(oldSize,newSize);
  if(preserveLength > 0)
  System.arraycopy (oldArray,0,newArray,0,preserveLength);
  return newArray;
 }  // Test routine for resizeArray().
public static void main (String[] args) {
  int[] a = {1,2,3};
  a = (int[])resizeArray(a,5);
  a[3] =4;
  a[4] =5;
  for(inti=0; i<a.length; i++)
  System.out.println (a[i]);
}

最新文章

  1. 设计模式(二)简单工厂模式(Simple Factory Pattern)
  2. js 字符串 replace replaceAll
  3. 初学JavaScript七大注意事项
  4. 通过VBA实现checkbox的全选和反选
  5. Java中断言的使用(转)
  6. xml velocity模板
  7. Find mac address
  8. [SQL]SUTFF内置函数的用法 (删除指定长度的字符并在指定的起始点插入另一组字符)
  9. VC的UNICODE 编程
  10. Vim配置 终端背景色配置
  11. CMStepCounter Class Refernce
  12. ASP.NET异常处理机制
  13. .htaccess 文件来进行用户组的目录权限访问控制
  14. IEEE754浮点数的表示方法
  15. Vue(五) 购物车案例
  16. node day2 vue read html
  17. socket 995 错误 boost
  18. sql左右连接测试
  19. oracle一个用户操作多个表空间中表的问题
  20. [BZOJ2669] [cqoi2012]局部极小值

热门文章

  1. 关于go的不爽
  2. 【poj解题】1028
  3. Bar Chart of Frequency of modals in different sections of the Brown Corpus
  4. mysql show命令
  5. WIFI机器人网
  6. ajax--2017年1月15日
  7. CSS排序工具csscomb
  8. 总结分享十大iOS开发者最喜爱的库 分类: ios相关 app相关 2015-04-03 16:43 320人阅读 评论(0) 收藏
  9. JQuery的 jQuery.fn.extend() 和jQuery.extend();
  10. UVa 374 - Big Mod