20个非常有用的Java程序片段

下面是20个非常有用的Java程序片段,希望能对你有用。内容比较早,有些函数可能过时了,但是总体思路是不错滴,供参考。
首页 新闻资讯 行业资讯 20个非常有用的Java程序片段

下面是20个非常有用的Java程序片段,希望能对你有用。内容比较早,有些函数可能过时了,但是总体思路是不错滴,供参考。

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

复制

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

  • 2.

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();          }      }
  • 1.

  • 2.

  • 3.

  • 4.

  • 5.

  • 6.

  • 7.

  • 8.

  • 9.

  • 10.

  • 11.

3、得到当前方法的名字

复制

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

4、转字符串到日期

复制

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

或者是:

复制

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

  • 2.

  • 3.

5、使用JDBC链接Oracle

    

 

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

复制

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

  • 2.

  • 3.

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

 

8、创建图片的缩略图 

 

 

9、创建 JSON 格式的数据

请先阅读这篇文章 了解一些细节,

并下面这个JAR 文件:json-rpc-1.0.jar (75 kb)  http://viralpatel.net/blogs/download/json/json-rpc-1.0.jar

复制

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

  • 2.

  • 3.

  • 4.

  • 5.

  • 6.

  • 7.

  • 8.

  • 9.

10、使用iText JAR生成PDF

阅读这篇文章 了解更多细节

 

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");
  • 1.

  • 2.

  • 3.

  • 4.

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;          }      }
  • 1.

  • 2.

  • 3.

  • 4.

  • 5.

  • 6.

  • 7.

  • 8.

  • 9.

  • 10.

  • 11.

  • 12.

  • 13.

  • 14.

另一种实现

复制

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

  • 2.

  • 3.

  • 4.

  • 5.

  • 6.

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", new File(fileName));       }      ...
  • 1.

  • 2.

  • 3.

  • 4.

  • 5.

  • 6.

  • 7.

  • 8.

  • 9.

  • 10.

  • 11.

  • 12.

  • 13.

  • 14.

  • 15.

  • 16.

  • 17.

14、列出文件和目录 

 

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();          }      }
  • 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.

  • 39.

  • 40.

  • 41.

  • 42.

  • 43.

  • 44.

  • 45.

  • 46.

  • 47.

  • 48.

  • 49.

16、解析/读取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>
  • 1.

  • 2.

  • 3.

  • 4.

  • 5.

  • 6.

  • 7.

  • 8.

  • 9.

  • 10.

  • 11.

  • 12.

  • 13.

  • 14.

  • 15.

  • 16.

  • 17.

  • 18.

XML文件

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.newInstance();                  DocumentBuilder db = dbf.newDocumentBuilder();                  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 (int i = 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");          }      }
  • 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.

  • 39.

  • 40.

  • 41.

  • 42.

  • 43.

  • 44.

  • 45.

  • 46.

  • 47.

  • 48.

  • 49.

  • 50.

  • 51.

  • 52.

  • 53.

  • 54.

  • 55.

  • 56.

  • 57.

  • 58.

  • 59.

  • 60.

  • 61.

  • 62.

  • 63.

  • 64.

  • 65.

  • 66.

  • 67.

  • 68.

  • 69.

  • 70.

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"));        }      }
  • 1.

  • 2.

  • 3.

  • 4.

  • 5.

  • 6.

  • 7.

  • 8.

  • 9.

  • 10.

  • 11.

  • 12.

  • 13.

  • 14.

  • 15.

18、发送邮件

复制

import javax.mail.*;   import javax.mail.internet.*;   import java.util.*;       public void postMail( String recipients[ ], String subject, String message , String from) throws MessagingException      {          boolean debug = 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 (int i = 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);      }
  • 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.

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://coolshell.cn/");                  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();              }          }
  • 1.

  • 2.

  • 3.

  • 4.

  • 5.

  • 6.

  • 7.

  • 8.

  • 9.

  • 10.

  • 11.

  • 12.

  • 13.

  • 14.

  • 15.

  • 16.

  • 17.

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 (int i=0; i<a.length; i++)            System.out.println (a[i]);      } plain
  • 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.

15    2017-08-02 13:32:18    编程 Java 程序片段