• About Me
  • Java基礎教學
  • 部落格聯播

[Java]常用的字串String函數function

字串或數字不足碼部份補零

 
/**
     * 數字不足部份補零回傳
     * @param str 數字
     * @param lenSize 數字最大長度,不足的部份補零
     * @return 回傳補零後字串數字
     */
    public static String MakesUpZero(int str, int lenSize) {
        return MakesUpZero(String.valueOf(str), lenSize);
    }
 
    /**
     * 數字不足部份補零回傳
     * @param str 字串
     * @param lenSize 字串數字最大長度,不足的部份補零
     * @return 回傳補零後字串數字
     */
    public static String MakesUpZero(String str, int lenSize) {
        String zero = "0000000000";
        String returnValue = zero;
 
        returnValue = zero + str;
 
        return returnValue.substring(returnValue.length() - lenSize);
 
    }
    public static void main(String args[])
    {
        //把字串123前方不足五碼的部份補零
        System.out.println("不足5碼部份補零:"+StringUtils.MakesUpZero("123", 5));
        //把數字123前方不足六碼的部份補零
        System.out.println("不足6碼部份補零:"+StringUtils.MakesUpZero(123, 6));
    }

詳細文章

Eclipse設定JDBC連接MySQL資料庫

Java要連接資料庫時,需使用到JDBC-Driver,而Driver可分成四個不同的Type,詳細的內容介紹可以看 簡介 JDBC

連接MySQL資料庫使用Connector/j,下載後解開壓縮後mysql-connector-java-5.1.15-bin.jar就是MySQL的JDBC-Driver了。

底下是在Eclipse使用JDBC-Driver的方法。

一.在Eclipse建立一個專案,增加一個Class

詳細文章

Java程式Mail、EDM(電子型錄)寄送

這個範例主要的概念是抓取網路上EDM的html內容,讀取外部的寄送email清單文字檔,依續一個個email寄送出EDM內容,寄送的每一封信件都使用thread來獨立完成,而且寄送中間都有固定的間隔時間。

JavaMail是Java用來處理Mail事件的一個Framework,提供寄信SMTP、收信POP3等常用到的Mail Protocol,主要由sun(目前為oracle)來維護,是一個官方的套件,可由此下載

發送Mail的主體程式Thread

Mail發送的內容為html,所以需要使用Multipart來承載內容,如果是純文字則可直接使用Message的setContent來加入信件內容。

詳細文章

[Java]讀取InputRead及寫入OutputWrite檔案File

Input及Output也就是IO的存取上,不只有Console輸出、鍵盤輸入這種組合,很常用的還有檔案的讀取及寫入,Java在讀取及寫入檔案上可大略分成二部份,Binary元位組IO及純文字的IO。

常用的class均屬於java.io這個package裡,以下圖表是讀取File檔時可用的相關類別。其相關的api說明可以參考Oracle sun JDK api

JavaIO以行為來分的話,可分成輸出模組及輸入模組,輸出模組像是寫入檔案、輸出至Console,而輸入模組像是讀取檔案、鍵盤輸入等。在類別名稱上可以很清楚的判別,含有字詞Input或Reader就是輸入模組,而含有字詞Output或Writer就是輸出模組。

Java讀取檔案

詳細文章

[Java]基本IO輸出Output及輸入Input-Console

Java的輸出及輸入控制大都定義在java.io.*裡,像是檔案File的讀寫,週邊設備RS232、LPT等的輸出與輸入都需要到Java IO。而Java IO大概分成二大類,一類是byte的讀取與寫出,可讀取寫入二位元binary的資料,而另一個是char的讀取與寫入,提供文字的讀取與寫入。

System類別並不屬於java.io的套件,而是屬於java.lang套件,在使用時預設載入,所以並不需要特別去import它。

  • System.in 通常是指鍵盤的輸入,為java.io.InputStream類別
  • System.out 通常是指Console螢幕輸出,為java.io.PrintStream類別
  • System.err 同System.out,主要是用在系統出錯時輸出至Console螢幕

註:Java本身在處理字串時均是使用utf8 uncode的方式,不過在Windows的Console(螢幕)字串的顯示與輸入都是使用ISO-8859-1編碼,所以需要先把字串轉換成Big5再行輸出,在Linux上則不會有這種問題。

System.out

  • System.out.println(內容):輸出”內容”加上”斷行\r\n”至Console(螢幕)
  • System.out.print(內容):輸出”內容”至Console(螢幕)

如果要輸出的內容需要有字串、文字、日期等,可以利用字串的連接+來把字串串連起來進行輸出。ex."中文"+123

如果需要自行做斷行,可以使用\r\n來做換行動作。ex.System.out.print("中文\r\n我換行了");

Out.png

詳細文章