C for asp net
This presentation is the property of its rightful owner.
Sponsored Links
1 / 108

C# 物件導向程式設計 for ASP.NET PowerPoint PPT Presentation


  • 384 Views
  • Uploaded on
  • Presentation posted in: General

C# 物件導向程式設計 for ASP.NET. 鄧姚文 http://www.ywdeng.idv.tw. 課程簡介. C# 的程式寫法 變數與型態 (Type & Abstract Data Type) 算式之運算符號 (Operator) 表示式 (expression) 陳述式 (statements) 副程式及函數 (Function/Method) 內建函數 (Inner Function) 例外處理. Visual Studio .Net 共用整合式開發環境. 方案 Solution 專案 Project

Download Presentation

C# 物件導向程式設計 for ASP.NET

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


C for asp net

C# 物件導向程式設計for ASP.NET

鄧姚文

http://www.ywdeng.idv.tw


C for asp net

課程簡介

C#的程式寫法

變數與型態 (Type & Abstract Data Type)

算式之運算符號 (Operator)

表示式(expression)

陳述式 (statements)

副程式及函數 (Function/Method)

內建函數 (Inner Function)

例外處理


Visual studio net

Visual Studio .Net 共用整合式開發環境

方案 Solution

專案 Project

一個方案之中可以包含多個專案


C for asp net

程式的編譯與執行

  • 主控台應用程式 Console Application

    • 文字模式介面

  • 視窗應用程式

    • Windows Form

  • 網站

    • Web Form


Sayhello

程式範例:SayHello

  • 請使用者輸入姓名並選擇性別

  • 依照性別不同,向使用者打招呼時加上『先生』或『小姐』

    • Console Application 版本

      • 使用 Console.Read 和 Console.Write

    • Web 版本

      • 使用 Label、 TextBox、 Button

      • 事件驅動模式

    • IntelliSense 智慧型提示


C for asp net

C# 基本語法

識別字(Identifier)

保留字(Keyword)

資料型別

變數宣告

型別轉換

運算子(Operator)

敘述與運算式


C identifier

C# 基本語法:識別字(Identifier)

  • 識別字(Identifier)

    • 必須以英文字母或底線開頭(中文字也可以)

    • 不得包含空白

    • 最大長度不得超過1023個字元

    • 大小寫字母視為不同

    • 不得使用保留字

    • 以多個英文字組成識別字,中間以底線分隔,或採用駱駝表示法

    • 變數名稱的開頭建議以型別或類別簡寫表示

      • 例如:txtName 、 lblPrompt


C for asp net

C# 基本語法:保留字/關鍵字


C for asp net

C# 基本語法:保留字/關鍵字

  • 關鍵字是對編譯器有特殊意義而預先定義的保留識別項。

  • 關鍵字必須具有一個前置的 @,才能做為程式中的識別項。

    • 例如,@if 是有效的識別項,但是 if 則不是,因為 if 是一個關鍵字。


C for asp net

資料型別

整數型別(Integer)

浮點數型別(Floating Point)

decimal 型別(錢)

char 型別(字元)

bool 型別(布林、真假值)

object 型別(物件)

string 型別(字串)


C for asp net

整數型別

kilo, mega, giga, tera, peta, exa, zetta


C for asp net

浮點數型別

float ratio = 1.5F


Decimal

Decimal 型別

相較於 double,

decimal 有效位數較多,值域較小,適合金融運算。

decimal ratio = 32.25M


C for asp net

Char 型別

字元採 Unicode 編碼

'A' 是一個字元

'文' 也是一個字元


C for asp net

Bool 型別

只有 true 和 false 兩個值

bool thisOneIsBigger = thisOne > thatOne;

if (thisOneIsBigger) {

loadLargerOne(thisOne);

} else {

loadLargerOne(thatOne);

}


Object

Object 型別

System.Object是一切類別的始祖


String

String 型別

字串採 Unicode 編碼

字串並不僅僅是字元的線性集合

"This is a book"

"這是第一行\n這是第二行\n目前路徑為C:\\Windows"

以 @ 括住的字串常值不處理逸出序列,

適用於Windows檔案名稱:

string fileName = @"c:\data\20091122.txt";


C for asp net

數值資料

  • 整數(Integer)

    • 十進位26,十六進位 0x1A,八進位032

  • 浮點數(Floating Point)

    • 2300,2.3E3

  • 字元(Character)

    • '文'、'a'、'\u0061'、'\x0061'

  • 字串(String)

    • "電腦"

  • 跳脫字元(Escape Characters)

    • '\n'


C for asp net

跳脫字元


C for asp net

逸出序列 (Escape Sequence)


C for asp net

變數宣告

int year = 2003, month = 2;

char yuan = '元';

float salary = 31255.6F;

string message = "恭賀新禧";

變數要先宣告才能使用

不可使用未經初始化的變數

浮點數的預設型別是 double,欲指定為 float 必須於數字尾加 f 或 F


C for asp net

型別轉換

int b = 400;

double x = b;

int z = (int)x;

  • 隱含轉換 Implicit Conversion

    • 值域小的轉換成值域大的

  • 強制轉換 Explicit Conversion

    • 值域大的轉換成值域小的

    • 不同值域間互換


C for asp net

型別轉換:字串轉數字

  • int n=int.Parse("1234");

  • double r=double.Parse("3.14");

  • 事實上是:

    • int n=System.Int32.Parse("1234");

    • double r=System.Double.Parse("3.14");

  • 物件轉成字串:

    • n.ToString();


C for asp net

常數符號宣告

const float PI = 3.1415F;

const double EXCHANGE_RATE = 32.65;

  • 文字式 Literal

    • 3.1415

    • "視窗標題"

  • 常數符號式 Symbolic

    • 全部用大寫英文字母

    • 兩個英文字之間加底線


Operator

運算子 Operator

指定 Assignment Operator

算術 Arithmetic Operator

關係 Relational Operator

邏輯 Logical Operator

字串 String Operator

複合指定

位元運算 Bitwise Operator


Operator cont d

運算子 Operator (cont'd)

運算子(Operator)

運算元(Operand)

  • 一元運算(Unary)

    • i++

  • 二元運算(Binary)

    • x + y


Assignment operator

指定運算子Assignment Operator

sum = n1 + n2;

sum = 0, count = 1, index = 100;

3 = x + y;

將等號右邊的值指定給等號右邊的變數


Arithmetic operator

算術運算子Arithmetic Operator


Relational operator

關係運算子Relational Operator


Logical operator

邏輯運算子Logical Operator


String operator

字串運算子String Operator

關係運算子也適用於字串


C for asp net

複合指定


Bitwise operator

位元運算子Bitwise Operator

AND &

OR |

XOR ^

補數 ~

右移 >>

左移 <<


Bitwise operator and

Bitwise Operator 練習一 AND

Console.Write("判斷奇數/偶數\n請輸入一個整數:");

int n = Int32.Parse(Console.ReadLine());

const int MASK = 0x1;

bool isEven = (n & MASK) == 0;

if (isEven) {

Console.WriteLine("{0} 是一個偶數", n);

} else {

Console.WriteLine("{0} 是一個奇數", n);

}

判斷某一個整數是奇數還是偶數?


Bitwise operator or

Bitwise Operator 練習一 OR

Console.Write("請輸入一個二進位數字:");

string line = Console.ReadLine();

int binary = Convert.ToInt32(line, 2);

int mask = Convert.ToInt32("1000", 2);

int result = binary | mask;

Console.WriteLine("設定第四位元後:" + Convert.ToString(result, 2));

將一個整數的第 4 個 bit 設成 1


Bitwise operator and1

Bitwise Operator 練習一 AND

將一個整數的第 4 個 bit 設成 0


C for asp net

範例:計算三角形面積

  • 三角形三邊長為 a, b, c

  • 其面積 A 為

  • 試寫一程式讀入三角型的三邊長,輸出其面積

    • 任意兩邊的和必須大於第三邊


C for asp net

[accessmodifier] enumname [: integertype]

{

membername1 [= expression1],

membername2 [= expression2],

...

membernameN [= expressionN]

}

enum MyWeekDays : byte

{

Sunday,

Monday,

Tuesday,

Wednesday,

Thursday,

Friday,

Saturday

}

列舉型別 enum


As is typeof sizeof

型別資訊運算子 (as、is、typeof、sizeof)

  • as 運算子的語法為「運算式/物件 as 型別」常用於物件型別降轉

  • is 運算子的語法為「運算式/物件 is 型別」

    • "abc" is string 會傳回 true,"abc" is int 傳回 false。

  • typeof 運算子的語法為「typeof(型別)」

    • typeof(string) 會傳回 System.String。

  • sizeof 運算子的語法為「sizeof(實值型別)」

    • sizeof(byte) 會傳回 1。


Web form

網頁表單 Web Form

  • 屬性

    • BackColor 背景顏色

    • Font 字型

    • ForeColor 前景顏色

    • Text 標題或內容文字

    • Height/Width 控制項的高度/寬度

    • Visible 控制項是否顯現

    • Enabled 控制項是否啟用

    • ReadOnly 控制項是否『不可編輯』?


C for asp net

屬性


Web form1

網頁表單 Web Form

事件

  • 事件

    • Init 頁面初始化時

    • Load 載入頁面時

    • DataBinding 繫結資料時

    • PreRender 頁面呈現前

    • Click 被滑鼠左鍵按一下時

    • TextChanged 內文改變時


Label

Label(標籤)

  • 顯示僅供讀取的文字

  • 屬性

    • (ID) 物件名稱

    • Text 顯示的文字

    • Font 字型

    • BorderStyle 外框形狀


Textbox

TextBox 文字方塊

  • 請使用者輸入資料

  • 屬性

    • Text 控制項中的文字

    • PasswordChar 輸入密碼時顯示的文字(輸入之文字不顯示實際內容)

    • ReadOnly 唯讀

    • TextMode 單行、多行、密碼輸入

      • 多行則由 Rows 屬性設定行數


Button

Button 按鈕

  • 傳送表單

  • 屬性與事件

    • Text 顯示文字

    • Click 按一下


C for asp net

變數的命名


C for asp net

範例:登入畫面

  • 設計一登入畫面

    • 以一個 TextBox 作為帳號輸入

    • 以一個 TextBox 作為密碼輸入

    • 表單載入後輸入焦點自動切到帳號輸入

    • 驗證規則:若輸入之帳號內容與密碼內容相同,則顯示"登入成功!",否則顯示"帳號或密碼錯誤!"


C for asp net

決策敘述

if {}

if {} else {}

switch case


C for asp net

if


If else

if {} else {}


C for asp net

三元運算子 ? :

int x, y, z;

...

if (x > y) {

z = x;

} else {

z = y;

}

int x, y, z;

...

z = (x > y) ? x : y;


C for asp net

範例:百分計分轉等第計分

  • 百分計分法轉等第計分法

    • 輸入一介於 0 與 100 之間的分數

    • 輸出其等第計分


Switch case

switch … case

switch (運算式) {

case 常數1:

敘述方塊1;

break;

case 常數2:

敘述方塊2;

break;

case ...

default:

敘述方塊n;

break;

}

適合判斷選項


C for asp net

Console.WriteLine("百分計分轉等第計分");

Console.Write("請輸入分數:");

double n = Double.Parse(Console.ReadLine());

if ((n > 100) | (n < 0)) {

Console.WriteLine("輸入的分數不合理");

}

string grade = null;

switch ((int)n / 10) {

case 10:

case 9:

case 8:

grade = "甲等(A)";

break;

case 7:

grade = "乙等(B)";

break;

case 6:

grade = "丙等(C)";

break;

case 5:

grade = "丁等(D)";

break;

default:

grade = "戊等(E)";

break;

}

Console.WriteLine(n.ToString()+" 分相當於"+grade);


C for asp net

範例:星座對照表

輸入出生日期

輸出星座名稱


C for asp net

十二星座日期對照表


C for asp net

迴圈敘述

  • 重複執行特定工作

    • while / do

    • for loop


While do

while/do 迴圈

while (運算式)

{

敘述區塊;

}

do

{

敘述區塊;

} while (運算式);


C for asp net

for 迴圈

for([ 控制變數=起始值];[迴圈運算式];[改變控制變數])

{

[ 敘述區塊 1; ]

[ break; ]

[ continue; ]

[ 敘述區塊 2; ]

}


Break and continue

break and continue

break 使迴圈立即中斷

continue 使迴圈立即回頭


C for asp net

陣列的宣告

  • 語法:

    • 資料型態 變數名稱

    • 資料型態[]變數名稱= new 資料型態[陣列大小];

    • 資料型態[,]變數名稱= new 資料型態[列大小, 行大小];

    • 資料型態[][]變數名稱= new 資料型態[陣列大小] [陣列大小];

  • 例子:

    • int[]arrDate = new int[7];

    • string[,]arrParams = new string[6,8];

    • int[][]arrJagged = new int[3][];

      • arrJagged[0] = new int[7];

      • arrJagged[1] = new int[3];

      • arrJagged[2] = new int[6];

    • string[]arrColors = {"red", "blue", "white"} ;


C for asp net

一維陣列

int [] A;

int [] A = new int[3];

A[0] = 10;

A[1] = 20;

A[2] = 30;

亦可寫成

int [] A = {10, 20, 30};

亦可寫成

int [] A = new int[3] {10, 20, 30};


Foreach

foreach 迴圈

用於陣列或其他集合物件的處理

語法foreach (type Item in Collection) { …= item …}


C for asp net

練習:N筆成績求平均、最高分、最低分

<%@ Page Language="C#" %>

<script runat="server">

void Page_Load(object sender, EventArgs e)

{

int[] Scores = {85, 60, 54, 91, 100, 77};

int MaxScore = 0, MinScore = 100;

foreach (int Item in Scores)

if (Item > MaxScore)

MaxScore = Item;

foreach (int Item in Scores)

{

if (Item < MinScore)

MinScore = Item;

}

Response.Write("最高分為" + MaxScore + "<br>");

Response.Write("最低分為" + MinScore);

}

</script>


C for asp net

程式範例:數字轉國字

將 0 1 2 3 4 5 6 7 8 9

轉換成 零壹貳參肆伍陸柒捌玖

讀取阿拉伯數字,轉換成國字輸出


C for asp net

多維陣列


Try 1 2

語法一

try {

程式碼

}

catch (類別型別識別項){

程式碼

}

finally {

程式碼

}

語法二

try {

程式碼

}

catch (類別型別識別項){

程式碼

}

語法三

try {

程式碼

}

finally {

程式碼

}

try 陳述式 (1/2)


Try 2 2

(a)

(b)

(c)

try 陳述式 (2/2)

try{

lblQuotient.Text = (Convert.ToDecimal(txtDividend.Text) /

Convert.ToDecimal(txtDivisor.Text)).ToString(".00");

}

catch (DivideByZeroException ex){

lblQuotient.Text = ex.Message;

}

catch (OverflowException ex){

lblQuotient.Text = ex.Message;

}


C for asp net

副程式及函數(1/3)

  • 副程式的語法:

    void 副程式名稱(參數1的資料型態 參數1, 參數2的資料型態 參數2, …){

    程式碼

    }

  • 如果副程式沒有參數,則語法中第一行要改成

    void 副程式名稱()


C for asp net

副程式及函數(2/3)

<script language="C#" runat="server">

void ComputeAverage(object obj, EventArgs e){

decimal Sum, Average;

Sum = Convert.ToDecimal(tbChinese.Text)

+ Convert.ToDecimal(tbEnglish.Text)

+ Convert.ToDecimal(tbMathematics.Text);

Average = Sum / 3;

lblMessage.Text = "平均成績為" + Average;

}

</script>

<html> <body>

<form runat="server">

請輸入下列成績<br />

國文:<asp:TextBox id="txtChinese" runat="server" /><p>

英文:<asp:TextBox id="txtEnglish" runat="server" /><p>

數學:<asp:TextBox id="txtMathematics" runat="server" /><p>

<asp:Button id="Button1" OnClick="ComputeAverage" runat="server" Text="傳送" /><p>

<asp:Label id="lblMessage" runat="server" />

</form>

</body></html>


C for asp net

副程式及函數(3/3)

使用者輸入資料介於0~100則傳回TRUE

不符合則傳回TRUE

  • 函數的語法:

    資料型態函數名稱(參數1的資料型態 參數1, 參數2的資料型態 參數2,…){

    程式碼

    }

    <script language="C#" runat="server">

    boolIsBetween0And100(decimal num){

    if (num >= 0 && num <= 100)

    return true;

    else

    return false;

    }


C for asp net

變數的宣告與有效範圍

if (...) {

int i = 17; ...

}

System.out.println("The value of i = " + i); // error

原則:區塊外的可以進到區塊內,區塊內的不能出到區塊外。


C for asp net

練習:攝氏轉華氏

<%@ Page Language="C#" %>

<script runat="server">

void Page_Load(object sender, EventArgs e)

{

double DegreeC = 25;

double DegreeF = ConvertToF(DegreeC);

Response.Write("攝氏" + DegreeC + "度等於華氏" + DegreeF + "度");

}

double ConvertToF(double C)

{

return C * 1.8 + 32;

}

</script>


C for asp net

參數 - 傳值呼叫

01:<%@ Page Language="C#" %>

02:<script runat="server">

03: void Page_Load(object sender, EventArgs e)

04: {

05: int Num = 1;

06: Increase(Num);

07: Response.Write("方法執行完畢後原參數值為" + Num + "<br>");

08: }

09:

10: void Increase(int Result)

11: {

12: Response.Write("方法剛被呼叫時的參數值為" + Result + "<br>");

13: Result += 1;

14: Response.Write("方法執行完畢後的參數值為" + Result + "<br>");

15: }

16:</script>


C for asp net

參數 - 傳值呼叫


C for asp net

參數 - 傳址呼叫

將 第06、10行改寫成傳址呼叫:

06:Increase(ref Num);

10:void Increase(ref int Result)

Internet Programming Ch.2


C for asp net

傳遞陣列給方法

<%@ Page Language="C#" %>

<script runat="server">

void Page_Load(object sender, EventArgs e)

{

StudentScores("小丸子", "90", "80", "缺席", "70"); //呼叫方法

}

void StudentScores(string Name, params string[] Scores)

{

Response.Write(Name + "的分數如下:" + "<br>");

for (int i = 0; i <= Scores.GetUpperBound(0); i++)

Response.Write(Scores[i] + "<br>");

}

Internet Programming Ch.2


C for asp net

從方法傳回陣列

<%@ Page Language="C#" %>

<script runat="server">

void Page_Load(object sender, EventArgs e)

{

int[] ReturnArray;

ReturnArray = ExpValue(10);

foreach (int Item in ReturnArray)

Response.Write(Item + "<br>");

}

int[] ExpValue(int A)

{

int[] X = new int[3];

X[0] = A;

X[1] = A * A;

X[2] = A * A * A;

return X;

}

</script>


C for asp net

01:<%@ Page Language="C#" %>

02:<script runat="server">

03: void Page_Load(object sender, EventArgs e)

04: {

05: Response.Write(i);

06: }

07:

08: void MySub()

09: {

10: int i = 1; //區域變數

11: Response.Write(i);

12: }

13:</script>

01:<%@ Page Language="C#" %>

02:<script runat="server">

03: int i = 1; //全域變數

04: void Page_Load(object sender, EventArgs e)

05: {

06: Response.Write(i);

07: }

08:

09: void MySub()

10: {

11: Response.Write(i);

12: }

13:</script>

區域變數 vs. 全域變數


C for asp net

靜態變數

\Ch05\Prac5-11.aspx

<%@ Page Language="C#" %>

<script runat="server">

static int Result = 0;

void Page_Load(object sender, EventArgs e)

{

Add();

Add();

}

void Add()

{

Result = Result + 1;

Response.Write(Result + "<br>");

}

</script>


C for asp net

<%@ Page Language="C#" %>

<script runat="server">

void Page_Load(object sender, EventArgs e)

{

int Result = 1;

for (int i = 1; i <= 5; i++)

Result *= i;

Response.Write("5! = " + Result);

}

</script>

<%@ Page Language="C#" %>

<script runat="server">

void Page_Load(object sender, EventArgs e)

{

Response.Write("5! = " + F(5));

}

int F(int N)

{

/*當N=0, F(N) = N! = 0! = 1 */

if (N == 0)

return 1;

/* N != 0, F(N)=N!= N*(N - 1)! = N*(N - 1) */

else

return N * F(N – 1);

}

</script>

遞迴方法


C for asp net

內建函數

  • Math 物件的數學函數

  • Strings 物件的字串函數

    • Substring 函數

    • ToCharArray 函數

    • Split 函數

  • DateTime 日期物件

    • Add 函數

    • Substract 函數

    • ToString 函數

    • 自訂日期格式

    • 數值資料型態的 ToString 函數

  • 資料型態轉換函數


Math 1 3

Math 數學函數(1/3)


Math 2 3

Math 數學函數(2/3)


Math 3 3

Math 數學函數(3/3)

<script language="C#" runat="server">

void Page_Load(object obj, EventArgs e){

Response.Write("64的平方根是:" + Math.Sqrt(64));

}

</script>


String 1 2

String 字串處理函數(1/2)


String 2 2

String 字串處理函數(2/2)


Substring

Substring 函數

  • Substring 函數的語法:Substring( 起始位置 , 長度)//idx = 0, 1, …

  • 範例:WebPage0212.aspx

    <script language="C#" runat="server">

    void Page_Load(object obj, EventArgs e){

    string str = "012wxyz789";

    Response.Write(str.Substring(3) + "<br>");

    Response.Write(str.Substring(3, 4));

    }

    </script>

wxyz789

wxyz


Tochararray

ToCharArray 函數

  • ToCharArray函數的語法:ToCharArray( 起始位置, 長度)

  • 範例: WebPage0213.aspx

    <script language="C#" runat="server">

    void Page_Load(object obj, EventArgs e){

    char[] arr = "012wxyz789".ToCharArray(3, 4);

    Response.Write("Each letter in arr is:<br>");

    foreach (char c in arr) Response.Write(c + "<br>");

    }

    </script>


Split

Split 函數

  • Split函數的語法: Split( 切割字元陣列, 切割份數 )

  • 範例: WebPage0214.aspx

    <script language="C#" runat="server">

    void Page_Load(object obj, EventArgs e){

    string delimStr = " ,.:";

    char [] delimiter = delimStr.ToCharArray();

    string words = "one two,three:four.";

    string [] spilt = null;

    Response.Write("The delimiters are -" + delimStr + "-<br>");

    for (int x = 1; x <= 5; x++) {

    split = words.Split(delimiter, x);

    Response.Write("<br>count = " + x + " ..............<br>");

    foreach (string s in split) Response.Write("-" + s + "-<br>");

    }

    }

    </script>


Datetime 1 2

DateTime 日期函數(1/2)


Datetime 2 2

DateTime 日期函數(2/2)


Datetime add 1 3

範例: WebPage0215.aspx

<script language="C#" runat="server">

void Page_Load(object obj, EventArgs e){

DateTime today =DateTime.Now;

TimeSpan duration = new TimeSpan(36, 0, 0, 0);

DateTime answer = today.Add(duration);

Response.Write("當天的時間是" + today + "<br>");

Response.Write("要加上的時間是" + duration + "<br>");

Response.Write("結果的時間是" + answer);

}

</script>

DateTime: Add函數 (1/3)


Datetime add 2 3

TimeSpan 物件中常用的 properties和methods (1/2)

DateTime: Add函數 (2/3)


Datetime add 3 3

TimeSpan 物件中常用的 properties和methods (2/2)

DateTime: Add函數 (3/3)


Datetime substract

範例: WebPage0216.aspx

<script language="C#" runat="server">

void Page_Load(object obj, EventArgs e){

DateTime date1 = new DateTime(2004, 8, 8, 22, 15, 0);

DateTime date2 = new DateTime(2004, 11, 11, 13, 2, 0);

DateTime date3 = new DateTime(2004, 10, 10, 8, 42, 0);

// diff1 gets 94 days, 14 hours, and 47 minutes.

TimeSpan diff1 = date2.Subtract(date1);

Response.Write(diff1 + "<br>");

// date4 gets 7/7/2004 5:55:00 PM.

DateTime date4 = date3.Subtract(diff1);

Response.Write(date4 + "<br>");

// diff2 gets 32 days 4 hours and 20 minutes.

TimeSpan diff2 = date2 - date3;

Response.Write(diff2 + "<br>");

// date5 gets 7/7/2004 5:55:00 PM.

DateTime date5 = date1 - diff2;

Response.Write(date5);

}

</script>

DateTime: Substract函數

圖2.20 瀏覽WebPage0214.aspx


Datetime tostring 1 2

日期格式描述符號 (1/2)

DateTime: ToString函數 (1/2)


Datetime tostring 2 2

日期格式描述符號 (2/2)

DateTime: ToString函數 (2/2)


C for asp net

自訂日期格式


C for asp net

自訂日期格式

  • 範例: WebPage0217.aspx

    <%@ Page Language="C#" culture="en-us" %>

    <script runat="server">

    void Page_Load(object obj, EventArgs e){

    Response.Write(DateTime.Now.ToString("d") + "<br />");

    Response.Write(DateTime.Now.ToString("dd") + "<br />");

    Response.Write(DateTime.Now.ToString("ddd") + "<br />");

    Response.Write(DateTime.Now.ToString("dddd") + "<br />");

    Response.Write("<br />");

    Response.Write(DateTime.Now.ToString("M") + "<br />");

    Response.Write(DateTime.Now.ToString("MM") + "<br />");

    Response.Write(DateTime.Now.ToString("MMM") + "<br />");

    Response.Write(DateTime.Now.ToString("MMMM") + "<br />");

    Response.Write("<br />");

    Response.Write(DateTime.Now.ToString("y") + "<br />");

    Response.Write(DateTime.Now.ToString("yy") + "<br />");

    Response.Write(DateTime.Now.ToString("yyy") + "<br />");

    Response.Write(DateTime.Now.ToString("yyyy") + "<br />");

    }

    </script>


Tostring method

數值資料型態 ToString Method

  • 自訂數字格式描述:變數.ToString(參數) 或 數值.ToString(參數)


Convert class 1 2

資料型態轉換函數Convert Class (1/2)


Convert class 2 2

資料型態轉換函數Convert Class (2/2)

Internet Programming Ch.2


Changetype

ChangeType資料型態轉換函數

<script language="C#" runat="server">

void Page_Load(object obj, EventArgs e)

{

Double d = -2.345; int i = (int)Convert.ChangeType(d, typeof(int));

Response.Write("<p>The double value " + d +

" when converted to an int becomes " + i);

string s = "09/08/07";

DateTime dt = (DateTime)Convert.ChangeType(s, typeof(DateTime));

Response.Write("<p>The string value " + s +

" when converted to a Date becomes " + dt);

}

</script>

//將d的值轉換成整數

  • 範例:WebPage0219.aspx


C for asp net

練習:加總、平均、最大、最小

  • 以TextBox取得使用者輸入的一串數字

    • 數字之間以空格或逗點分隔

  • 以 Split 將 TextBox.Text 字串中的數字取出,計算其總和、平均、最大值、最小值

    • 以 Convert.ToDouble 轉換型別


  • Login