Java常用基础知识(20个)

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("D:\\asxxsst20170817.log", true));// \需要用\转义 
		  out.write("aString"); //在这编写增加的内容
		} catch (IOException e) { 
		  // error processing code 
		} finally { 
		  if (out != null) { 
		    try {
				out.close();
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} 
		  } 
		}


3. 得到当前方法的名字 

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

4. 转字符串到日期

Date date1 = java.text.DateFormat.getDateInstance().parse("2017-08-24");
或者是:

 		String myString0 = "24.08.2017";
		String myString = "2017-08-24 09:47:50";
		SimpleDateFormat format0 = new SimpleDateFormat( "dd.MM.yyyy" );  
		SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
		
		try {
			Date date0 = format0.parse(myString0);
			Date date = format.parse(myString);
			System.out.println(date0);
			System.out.println(date);
			
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}


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());
		
		System.out.println("今天是:"+utilDate+"(java.util.Date)");
		System.out.println("今天是:"+sqlDate+"(java.sql.Date)");

?

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();
			}
		}
	}
//在主函数中调用
		File in = new File("D:\\asxxsst20170817.log");
		File out = new File("D:\\456.txt");
		fileCopy(in, out);

?

 

8. 创建图片的缩略图

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 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 格式的数据

并下面这个JAR 文件:json-rpc-1.0.jar (75 kb)/http://t.cn/Rz0bhUA

?
1
2
3
4
5
6
7
8
9
importorg.json.JSONObject;
...
...
JSONObject json = newJSONObject();
json.put("city","Mumbai");
json.put("country","India");
...
String output = json.toString();
...

10. 使用iText JAR生成PDF

	try{
	      OutputStream file = new FileOutputStream(new File("C:\\Test.pdf"));
	   
	      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. HTTP 代理设置

?
1
2
3
4
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;
	}
}

?


13. 抓屏程序

public class PrintScreen{
	
	public static void main(String[] args) throws Exception {
		captureScreen("D:\\抓屏.png");
	}

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

public class Lists{
	public static void main(String[] args) {
		
		File dir = new File("D:\\zx");
		 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]; 
		     System.out.println(filename);
		   }
		 }
		   
		 // 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文件 

public class ZipAndJar { 
  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文件

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?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 ParseXML;

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("1.xml");
		// parser.getAllUserNames("D:\\1.xml");
	}
}

?

 

17. 把 Array 转换成 Map 

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. 发送邮件

public class sendMail{
	
	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 = newInternetAddress(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 请求

public class Main { 
  public static void main(String[] args) { 
    try{
//      URL my_url = new URL("http://coolshell.cn/");
      URL my_url = new URL("http://baidu.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. 改变数组的大小

public class ChangeArray {

	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};
		  for(int i=0; i<a.length; i++) 
		  System.out.println(a[i]);
		  a = (int[])resizeArray(a,5);
		  System.out.println("----------");
		  a[3] = 4;
		  a[4] = 5;
		  for(int i=0; i<a.length; i++) 
		   System.out.println (a[i]); 
		}
	
}

?


猜你喜欢

转载自blog.csdn.net/hackage4619/article/details/77509007