以下は20の非常に便利なJavaプログラムスニペットです。それがあなたに役立つことを願っています。
1.文字列には整数変換があります
文字列a = string.valueof(2); // integer to numeric string int i = integer.parseint(a); // intへの数値文字列
2.ファイルの最後にコンテンツを追加します
bufferedwriter out = null; try {out = new BufferedWriter(new filewriter( "filename"、true)); out.write( "astring"); } catch(ioException e){//エラー処理コード}最後に{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 = format.parse(mystring);
5。JDBCにOracleをリンクします
パブリッククラスoraclejdbctest {string driverclass = "oracle.jdbc.driver.oracledriver";接続CON; public void init(fileinputStream fs)は、classNotFoundException、sqlexception、filenotfoundexception、ioexception {properties props = new Properties(); propss.load(fs); string url = props.getProperty( "db.url"); string username = props.getProperty( "db.user");文字列パスワード= props.getProperty( "db.password"); class.forname(driverclass); con = drivermanager.getConnection(url、username、password); } public void fetch()throws sqlexception、ioexception {preated -statement ps = con.preparestatement( "select sysdate from dual");結果rs = ps.executequery(); while(rs.next()){//あなたがすることをします} rs.Close(); ps.close(); } public static void main(string [] args){oraclejdbctest test = new oraclejdbctest(); test.init(); test.fetch(); }} 6。Javautil.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); //オリジナル-Windowsに大きなファイルをコピーするのに問題があるようです// Windowsのマジック番号、64MB -32KB) long size = inchannel.size();長い位置= 0; while(position <size){position += inchannel.transferto(position、maxcount、outchannel); }}最後に{if(inchannel!= null){inchannel.close(); } if(outchannel!= null){outchannel.close(); }}} 8。画像のサムネイルを作成します
private void createThumbnail(String filename、int thumbwidth、int thumbheight、int quality、string outfilename)Sthrows arturnedexception、filenotfoundexception、ioexception {// filename画像= toolkit.getDefaultToolkit()。 mediatracker mediatracker = new Mediatracker(new Container()); mediatracker.addimage(image、0); mediatracker.waitforid(0); //これを使用して、この時点でエラーをテストします。System.out.println(mediatracker.iserrorany()); //幅と高さからサムネイルのサイズを決定しますダブルサムブラチオ=(二重)サムワイド /(二重)サムハイト。 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); } //元の画像をサムネイル画像オブジェクトに描き、//それを新しいサイズのオンザフライバッファディマージにスケーリングします。 Graphics2d Graphics2d = thumbimage.creategraphics(); Graphics2d.setRenderingHint(renderinghints.key_interpolation、renderinghints.value_interpolation_bilinear); graphics2d.drawimage(画像、0、0、サムワイド、サムハイト、null); //サムネイル画像を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)
Import org.json.jsonobject; ... ... jsonobject json = new jsonobject(); json.put( "City"、 "Mumbai"); json.put( "国"、 "インド"); ... string output = json.toString(); ...
10。ITEXTJARを使用してPDFを生成します
java.io.fileをインポートします。 java.io.fileoutputStreamをインポートします。 java.io.outputStreamをインポートします。 Import Java.util.date; com.lowagie.text.documentをインポートします。 com.lowagie.text.paragraphをインポートします。 com.lowagie.text.pdf.pdfwriterをインポートします。 public class generatepdf {public static void main(string [] args){try {outputstream file = new fileoutputStream(new file( "://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。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。シングルインスタンスシングルトンの例
public class simplesingleton {private static simplesingleton singleinstance = new SimplesingLeton(); //直接インスタンス化を避けるために、デフォルトのコンストラクタープライベート//マーク。 private simplesingleton(){} //クラスのインスタンスを取得するsimplesingleton public static simplesingleton getInstance(){return singleinstance; }}別の実装
public enum simplesingleton {instance; public void dosomething(){}} // singleton:simplesingleton.instance.dosomething()からメソッドを呼び出す(); 13。スクリーンキャプチャプログラム
java.awt.dimensionをインポートします。 java.awt.rectangleをインポートします。 java.awt.robotをインポートします。 java.awt.toolkitをインポートします。 java.awt.image.bufferedimageをインポートします。 javax.imageio.imageioをインポートします。 java.io.fileをインポートします。 ... public void CaptureScreen(String filename)スロー例外{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。ファイルとディレクトリのリスト
ファイルdir = new file( "directoryName"); string [] children = dir.list(); if(children == null){// dirが存在しないか、ディレクトリではない} }} //返されたファイルのリストをフィルタリングすることもできます。 //この例は、「」で始まるファイルを返しません。 filenamefilter filter = new filenamefilter(){public boolean accept(file dir、string name){return!name.startswith( "。"); }};子供= dir.list(フィルター); //ファイルのリストは、ファイルオブジェクトファイル[] files = dir.listfiles()として取得することもできます。 //このフィルターは、directories filefilter filefilter = new filefilter(){public boolean accept(file file){return file.isdirectory(); }}; files = dir.listfiles(filefilter); 15. ZIPおよびJARファイルを作成します
java.util.zip。*をインポートします。 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 file2 file3"); System.Exit(-1); } file zipfile = new file(args [0]); if(zipfile.exists()){system.err.println( "zipファイルは既に存在します、別のzipファイルを試してください"); 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);続く; } bufferedInputStream bis = new BufferedInputStream(new FileInputStream(file)); crc.reset(); while((bytesread = bis.read(buffer))!= -1){crc.update(buffer、0、bytesread); } bis.close(); //入力ストリームの開始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バージョン= "1.0"?> <学生> <学生> <名前> john </name> <grade> b </grade> <age> 12 </age> </sudent> <sudent> <name </name> <grade> a </grade> a </grade> <age>
Javaコード
パッケージnet.viralpatel.java.xmlparser; java.io.fileをインポートします。 javax.xml.parsers.documentbuilderをインポートします。 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);要素docele = doc.getDocumentElement(); //ドキュメントSystem.out.printlnのルート要素を印刷( "ドキュメントのルート要素:" + docele.getNodename()); NodeList StudentList = docele.getElementsByTagname( "desute"); //ドキュメントSystem.out .println( "合計学生:" + sustentlist.getLength())に合計学生要素を印刷します。 if(dustentlist!= null && sustentlist.getLength()> 0){for(int i = 0; i <sustentList.getLength(); i ++){node node = sustentlist.item(i); if(node.getNodetype()== node.Element_node){system.out .println( "=====================================================================要素e =(要素)ノード; 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(例外e){system.out.println(e); }} public static void main(string [] args){xmlparser parser = new XmlParser(); parser.getallusernames( "c://test.xml"); }} 17。配列をマップに変換します
java.util.mapをインポートします。 org.apache.commons.lang.arrayutilsをインポートします。 Public Class Main {public static void main(string [] args){string [] [] vations = {{"United States"、 "New York"}、{"United"}、{"Netherland"、 "amsterdam"}、{"Japan"、 "" o "}、{" france " Map CountryCapitals = Arrayutils.Tomap(国); System.out.println( "日本の首都is" + countrycapitals.get( "Japan")); System.out.println( "フランスの首都is" + countrycapitals.get( "france")); }} 18.メールを送信します
javax.mail。*; javax.mail.internet。*; Java.util。*をインポートします。 public void postmail(String Recipients []、String subject、string message、string from)throws messagingexception {boolean debug = false; //ホストSMTPアドレスプロパティProps = new Properties()を設定します。 props.put( "mail.smtp.host"、 "smtp.example.com"); //いくつかのプロパティを作成し、デフォルトのセッションセッション= session.getDefaultInstance(Props、null)を取得します。 session.setDebug(debug); //メッセージメッセージを作成するメッセージmsg = new mimemessage(session); // fromを設定し、internetAddressのアドレスを設定します。 msg.setfrom(アドレスから); InternetAddress [] addressto = new InternetAddress [reciontients.length]; for(int i = 0; i <reciontient.length; i ++){addressto [i] = new InternetAddress(Reciontients [i]); } msg.setRecipients(message.recipientType.to、addressto); //オプション:msg.addheader( "myheadername"、 "myheadervalue")が必要な場合は、電子メールにカスタムヘッダーを設定することもできます。 //サブジェクトとコンテンツの設定タイプmsg.setsubject(件名); msg.setContent(メッセージ、 "Text/Plain"); Transport.send(msg); } 19.データ生成のHTTPリクエストを送信します
java.io.bufferedreaderをインポートします。 java.io.inputStreamReaderをインポートします。 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()));文字列strtemp = ""; while(null!=(strtemp = br.readline())){system.out.println(strtemp); }} catch(Exception ex){ex.printstacktrace(); }}} 20。配列のサイズを変更します
/** *新しいサイズの配列を再配置し、古い配列のコンテンツ *を新しい配列にコピーします。 * @Param OldArray古い配列、再割り当て。 * @param Newsize new Arrayサイズ。 * @return同じコンテンツを持つ新しい配列。 */private static object Resizearray(Object OldArray、int Newsize){int oldsize = java.lang.reflt.array.getLength(oldArray); class elementType = oldArray.getClass()。getComponentType();オブジェクトnewArray = java.lang.reflt.arreay.newinstance(elementType、Newsize); int preservelength = math.min(oldsize、newsize); if(preservelength> 0)System.ArrayCopy(OldArray、0、NewArray、0、preservelength); NewArrayを返します。 } // 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プログラミングを学ぶのに役立つことを願っています。