• 20个开发人员非常有用的Java功能代码


    1. 把Strings转换成int和把int转换成String

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

     

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

    2. 向Java文件中添加文本

     

    Updated: Thanks Simone for pointing to exception. I have 
    
    changed the code.  BufferedWriter ut = null;   try 
    
    {   out = new BufferedWriter(new FileWriter(”
    
    filename”, true));   out.write(”
    
    aString”);   } catch (IOException e) {   // error processing code   } finally 
    
    {   if (out != null) {   out.close();   }   }

     

    BufferedWriter ut = 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. 获取Java现在正调用的方法名

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

     

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

    4. 在Java中将String型转换成Date型

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

     

    java.util.Date = java.text.DateFormat.getDateInstance().parse(date String);or SimpleDateFormat format = new SimpleDateFormat( "dd.MM.yyyy" ); Date date = format.parse( myString ); SimpleDateFormat format = new SimpleDateFormat( "dd.MM.yyyy" ); Date date = format.parse( myString );

    5. 通过Java 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
    ();  }  }

    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转换成sql Date用于数据库

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

     

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

    7. 使用NIO快速复制Java文件

    public static void fileCopy( File in, File out )
      throws IOException  {  FileChannel inChannel = new
    FileInputStream( in ).getChannel();  FileChannel utChannel = 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 )  {  &
    nbsp; position += inChannel.transferTo( position, maxCount, outChannel );

    }
      }  finally {  if (
    inChannel != null )  {  &
    nbsp; inChannel.close();  }
      if ( outChannel != null )  {  &
    nbsp;  outChannel.close();  }
      }  }

    8. 在Java中创建缩略图

    private void createThumbnail(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(new Container());  mediaTracker.addImage(image,
    0);  mediaTracker.waitForID(0);  // use this to test for errors at

    9. 在Java中创建JSON数据

    Download JAR file json
    -rpc-1.0.jar (75 kb)

     

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

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

    10. 在Java中使用iText JAR打开PDF

    Read this article for more details.

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

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

    11. 在Java上的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");

    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. Java Singleton 例子

    Read this article for more
    details. Update: Thanks Markus for the comment. I have updated the code and
    changed it to

    more robust implementation.

    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 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; } } One more implementation of
    Singleton class. Thanks to Ralph and Lukasz Zielinski

    for pointing this out.

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

    public enum SimpleSingleton { INSTANCE; public void
    doSomething() { } }

    //Call the method from Singleton: SimpleSingleton.INSTANCE.doSomething();

    13. 在Java上做屏幕截图

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

    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. 在Java中的文件,目录列表

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

    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. 在Java中创建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()) {  &
    nbsp;  System.err.println("Skipping: " + name);  &
    nbsp;  continue;  }
      BufferedInputStream bis = new BufferedInputStream(  &
    nbsp;  new FileInputStream(file));  crc.reset
    ();  while
    ((bytesRead = bis.read(buffer)) != -1) {  &
    nbsp;  crc.update(buffer, 0, bytesRead);  }
      bis.close();  // Reset to
    beginning of input stream  bis = new
    BufferedInputStream(  &
    nbsp;  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) {  &
    nbsp;  zos.write(buffer, 0, bytesRead);  }
      bis.close();  }
      zos.close
    ();  }  }

    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); &
    nbsp;  
    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); &
    nbsp; 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. Parsing / Reading XML file in Java Sample XML file.

    John B 12 Mary A 11 Simon A 18

    <?xml version="1.0"? > John B 12 Mary A <
    AGE>11 Simon A 18 Java code to parse above XML.

    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()) {  &
    nbsp;  Document doc = db.parse(file);  &
    nbsp;  Element docEle = doc.getDocumentElement(); 
    &
    nbsp;  // Print root element of the document  &
    nbsp;  System.out.println("Root element of the document: " &
    nbsp;          + docEle.getNodeName
    ()); 
    &
    nbsp;  NodeList studentList = docEle.getElementsByTagName
    ("student"); 
    &
    nbsp;  // Print total student elements in document  &
    nbsp;  System.out  & nbsp; .println("Total students: " + studentList.getLength());
    &
    nbsp;  if (studentList != null && studentList.getLength() > 0)
    {  &
    nbsp;      for (int i = 0; i < studentList.getLength();
    i++) { 
    &
    nbsp;          Node node =
    studentList.item(i); 
    &
    nbsp;          if (node.getNodeType()
    == Node.ELEMENT_NODE) { 
    &
    nbsp;             
    System.out  &
    nbsp;            
             .println
    ("====================="); 
    &
    nbsp;             
    Element e = (Element) node;  &
    nbsp;             
    NodeList nodeList = e.getElementsByTagName("name");  &
    nbsp;             
    System.out.println("Name: " & nbsp; + nodeList.item(0).getChildNodes ().item(0) &
    nbsp;            
                 
    ;   .getNodeValue()); 
    &
    nbsp;             
    nodeList = e.getElementsByTagName("grade");  &
    nbsp;             
    System.out.println("Grade: " &
    nbsp;            
             + nodeList.item(0).getChildNodes
    ().item(0)  &
    nbsp;            
                 
    ;   .getNodeValue()); 
    &
    nbsp;             
    nodeList = e.getElementsByTagName("age");  &
    nbsp;             
    System.out.println("Age: " &
    nbsp;            
             + nodeList.item(0).getChildNodes
    ().item(0)  &
    nbsp;            
                 
    ;   .getNodeValue());  &
    nbsp;          }  &
    nbsp;      }  &
    nbsp;  } else {  &
    nbsp;      System.exit(1);  &
    nbsp;  }  }
      } catch (Exception e)
    {  System.out.println(e);  }  }  public
    static void main(String[] args) { 
    XMLParser parser = new XMLParser
    ();  parser.getAllUserNames("c:\\test.xml");  }
      }

    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 &nb
    sp;.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.
    Convert Array to Map in Java

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

    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. Send Email
    using Java

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

    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. Send HTTP
    request & fetching data using Java

    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://www.viralpatel.net/blogs/");&nbs
    p; 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();  }
      }  }

    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://www.viralpatel.net/blogs/");    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. Resize an Array in Java

    /** * 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 ldSize =
    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; <BR="" i++)="">      System.out.println (a[i]);  }

    16. 在Java中解析/读取XML文件

    view plaincopy to clipboardprint?
    <?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 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 code to parse above XML.

    view plaincopy to clipboardprint?
    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"); } }

    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. 在Java中将Array转换成Map

    plaincopy to clipboardprint?
    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"));  }  }

    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. 在Java中发送电子邮件

    view plaincopy to clipboardprint?
    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); }

    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. 使用Java发送HTTP请求和提取数据

    view plaincopy to clipboardprint?
    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://www.viralpatel.net/blogs/"); 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(); } } }

    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://www.viralpatel.net/blogs/"); 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. 在Java中调整数组

    view plaincopy to clipboardprint?

    /**
    * 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 ldSize = 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]); 
    }

  • 相关阅读:
    [转载]java日志框架log4j详细配置及与slf4j联合使用教程
    log4j的正确使用姿势
    eclipse 安装properties编辑器,显示中文
    tips:解决bootstrap-switch 在jqgrid中动态加载不显示的问题
    jqgrid 设置为每行单选
    MySQL 批量修改某一列的值为另外一个字段的值
    MySQL 使用左连接替换not in
    分析一个react项目
    React不同版本之间需要注意的地方
    一个出色的表格(React实现__ES5语法)
  • 原文地址:https://www.cnblogs.com/wjlstation/p/2592139.html
Copyright © 2020-2023  润新知