在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的**如下:
1class
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)
1static
void
japanesetest()
2
3、日語字串轉換hankana,katakana,hiragana
github**庫(/tree/master/asp.netcoreexperiment/common/janpanesefullhalfwidthtransfer)
1class
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)
1static
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 在 布局中還可以修改引數,使其水平布局,那麼那...