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

    xiaoxiao2021-07-11  312

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

    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

       

    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进行快速的文件拷贝

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

    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");  

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

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

    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>  

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

    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      {          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);      }  

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

    20、改变数组的大小   

    /**  * Reallocates an array with a new sizeand 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  

    作者:陈皓

    来源:51CTO

    相关资源:七夕情人节表白HTML源码(两款)

    最新回复(0)