zoukankan      html  css  js  c++  java
  • 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. 转字符串到日期

    <strong>java.util.Date = java.text.DateFormat.getDateInstance().parse(date String);</strong>

    或者是:

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


    }

    9. 创建 JSON 格式的数据

    请先阅读这篇文章 了解一些细节,
    并下面这个JAR 文件:json-rpc-1.0.jar (75 kb)

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

    10. 使用iText JAR生成PDF

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

    <font color="rgb(51, 51, 51)"><font style="background-color:rgb(248, 248, 248)"><font face="宋体">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(); 


    }</font></font></font>

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

    另外一种实现

    <font color="rgb(51, 51, 51)"><font style="background-color:rgb(248, 248, 248)"><font face="宋体">public enum SimpleSingleton {   
        INSTANCE;   
        public void doSomething() {   
        }   
    }   
       
    //Call the method from Singleton:   
    SimpleSingleton.INSTANCE.doSomething();  </font></font></font>

    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. 列出文件和目录

    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>



    转载自:http://blog.csdn.net/tw19811220/article/details/12199469

  • 相关阅读:
    使用json-lib进行Java和JSON之间的转换
    ajax+json+java
    了解Json
    Ehcache RIM
    利用FreeMarker静态化网页
    Timer和TimerTask
    windows下memcache安装
    mac下安装YII
    php static 和self区别
    YII behaviors使用
  • 原文地址:https://www.cnblogs.com/fyq891014/p/4188820.html
Copyright © 2011-2022 走看看