對日程式設計的一些小知識點

2022-02-02 09:27:37 字數 4058 閱讀 4407

在github上有個專案,本來是作為自己研究學習.net core的demo,沒想到很多同學在看,還給了很多星,所以覺得應該公升成3.0,整理一下,寫成博分享給學習.net core的同學們。

專案名稱:asp.netcoreexperiment

今天先分享幾個對日程式設計的小知識點

1、關於bom(byte order mark)知識點( 

github庫**(/blob/master/asp.netcoreexperiment/common/uft8_bom_demo/program.cs)

bom格式就是在開頭新增三個位元組-ef,bb,bf,來宣告utf-8格式

在.net core中,生成bom的**如下:

1

class

program28

///9

///方式一,利用utf8encoding建構函式來新增ef,bb,bf開頭位元組流

10///

11static

void

generatebom1()

1219

using (var reader = new streamwriter(filepath, false

, encoding))

2025}26

///27

///方式二,手動方式新增ef,bb,bf開頭位元組流

28///

29static

void

generatebom2()

30);//

ef=239 bb=187 bf=191

34var filepath = directory.getcurrentdirectory() + "

/bom2.txt";

35if

(file.exists(filepath))

3639

using (var stream = new

filestream(filepath, filemode.createnew))

4044

}45 }

2、日本日曆

github**庫(/tree/master/asp.netcoreexperiment/common/calendardemo)

1

static

void

japanesetest()

2

3、日語字串轉換hankana,katakana,hiragana

github**庫(/tree/master/asp.netcoreexperiment/common/janpanesefullhalfwidthtransfer)

1

class

program2"

);23 console.writeline($"

converted hankana:");

24console.writeline();

2526

//hankana-katakana

27 console.writeline($"

********************====hankanatokatakana********************===");

28 console.writeline($"

old hankana:");

29 console.writeline($"

converted katakana:");

30console.writeline();

3132

//hiragana-hankana

33 console.writeline($"

********************====hiraganatohankana********************===");

34 console.writeline($"

old hiragana:");

35 console.writeline($"

converted hankana:");

36console.writeline();

3738

//hankana--hiragana

39 console.writeline($"

********************====hankanatohiragana********************===");

40 console.writeline($"

old hankana:");

41 console.writeline($"

converted hiragana:");

42console.writeline();

4344

//katakana-hiragana

45 console.writeline($"

********************====katakanatohiragana********************===");

46 console.writeline($"

old katakana:");

47 console.writeline($"

converted hiragana:");

48console.writeline();

4950

//hiragana-katakana

51 console.writeline($"

********************====hiraganatokatakana********************===");

52 console.writeline($"

old hiragana:");

53 console.writeline($"

converted katakana:");

54console.writeline();

5556

//katakana-hiragana

57 console.writeline($"

********************====katakanatohiragana********************===");

58 console.writeline($"

old katakanaodoriji:");

59 console.writeline($"

converted hiraganaodoriji:");

60console.writeline();

6162

//hiragana-katakana

63 console.writeline($"

********************====hiraganatokatakana********************===");

64 console.writeline($"

old hiraganaodoriji:");

65 console.writeline($"

converted katakanaodoriji:");

66console.writeline();

67console.readline();

686970}

71 }

4、shift-jis格式輸出

github**庫(/tree/master/asp.netcoreexperiment/common/shift_jisdemo)

1

static

void main(string

args)

2

程式設計的一些小知識點總結

1e6 5 1000005 表示很大的數時,以前都是瘋狂巧零,如果用1e6 5 1000005來代替的話會方便很多,而且也不容易出錯。int mid l r 1 位元操作 用二進位制的移位操作,來進行簡單的乘除法,左移 相當於乘,右移 相當於除 fill函式,fill與memset函式的區別 因為m...

一些小的知識點

malloc calloc 等記憶體分配函式所獲得的記憶體塊都來自乙個稱為堆 heap 的儲存池。記憶體洩漏 memory leak 是指程式中己動態分配的堆記憶體由於某種原因程式未釋放或無法釋放,造成系統記憶體的浪費,導致程式執行速度減慢甚至系統崩潰等嚴重後果。記憶體洩漏缺陷具有隱蔽性 積累性的特...

一些小的知識點

1.recycleview中使用gridlayoutmanager使其有gridview的效果 布局,第乙個引數表示上下文,第二個引數表示 有多少列,如下 rv.setlayoutmanager new gridlayoutmanager this,3 在 布局中還可以修改引數,使其水平布局,那麼那...