顯示具有 日期 標籤的文章。 顯示所有文章
顯示具有 日期 標籤的文章。 顯示所有文章

2015年11月18日 星期三

[C#][擴充方法] 取得西元日期的民國年月日

        /// <summary> 將西元日期轉民國日期 回傳 字串陣列[0]民國年YYY [1]月MM [2]日DD</summary>
        /// <param name="datetime">要轉換的日期</param>
        /// <returns>字串陣列[0]民國年YYY [1]月MM [2]日DD</returns>
        public static string[] ToSimpleTaiwanDate(this DateTime datetime)
        {
            TaiwanCalendar taiwanCalendar = new TaiwanCalendar();

            return new string[]{
                taiwanCalendar.GetYear(datetime).ToString(),
                datetime.Month.ToString().PadLeft(2,'0'),
                datetime.Day.ToString().PadLeft(2,'0')};
        }

        /// <summary> 將西元日期轉民國日期 回傳 字串陣列[0]民國年YYY [1]月MM [2]日DD</summary>
        /// <param name="datetime">要轉換的日期</param>
        /// <returns>字串陣列[0]民國年YYY [1]月MM [2]日DD</returns>
        public static string ToSimpleTaiwanDate_YYYMMDD(this DateTime datetime)
        {
            TaiwanCalendar taiwanCalendar = new TaiwanCalendar();

            return
                taiwanCalendar.GetYear(datetime).ToString()+
                datetime.Month.ToString().PadLeft(2,'0')+
                datetime.Day.ToString().PadLeft(2,'0');
        }

[C#][擴充方法] 取得日期的統一發票期別


        /// <summary> 傳入日期傳出發票期別的兩個數字 [1 2] [3 4]...</summary>
        /// <param name="datetime">要判斷的日期</param>
        /// <returns> 整數陣列[0]期別第一個月份 [1]期別第二個月份 </returns>
        public static int[] ToInvoiceMonthRange(this DateTime datetime)
        {
            //2 4 6 8...->餘0 ->[2-1,2][4-1,4]
            //1 3 5 7...->餘1 ->[1,1+1][3,3+1]
            return (datetime.Month % 2) == 0
                ? new int[] { datetime.Month - 1, datetime.Month }
                : (datetime.Month % 2) == 1
                    ? new int[] { datetime.Month, datetime.Month+1 }
                    : new int[] { 0, 0 };
        }

2011年5月17日 星期二

取得系統日期

1.目標:印出系統目前的年月日
2.XML設計:
   (1)1個XML:main.xml裡有1個textview:dateTextView
3.實作:
public class main extends Activity {
 /*宣告三個日期變數,用來抓年月日*/
 private int mYear;
 private int mMonth;
 private int mDay;
/*宣告物件變數tv,在程式碼裡指定tv到textview用的*/
 TextView tv;
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
     /*取得日期*/
     Calendar c=Calendar.getInstance();//建立抓日期物件c
     mYear=c.get(Calendar.YEAR);//年
     mMonth=c.get(Calendar.MONTH);//月
     mDay=c.get(Calendar.DAY_OF_MONTH);//日
     
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);//設定載入的xml
      
        tv= (TextView) findViewById(R.id.dateTextView);
        /*指定tv到xml中的textview元件*/
        
        updateDisplay();
        //呼叫自定方法,用來把日期丟到textview裡面
    } 


private void updateDisplay()
{//設定tv的字,用append()方法加入字串,數字用自定方法轉成二個字元
 tv.setText(
 new StringBuilder().append(mYear).append("年")
        .append(format(mMonth + 1)).append("月")
        .append(format(mDay)).append("日")
   ); 
}

//自定方法,如果只有一位數的時候就加入一個0
private String format(int i) {
 String s=" "+i;
 if(s.length()==1) s="0"+s;
 return s;
}
}