Pages

2014-02-28

SnagIt 11.4.1擷圖處理UI更友善

SnagIt 11.4.1.195 (2014.02.12)釋出的版本,發現擷圖後的處理UI 更加友善,除了能直接糊化處理,也多了數字編號,方便分享說明。

Snagit UI

Snagit一直是我最愛用的Windows擷圖工具,非常非常地推薦!!

2014-02-26

Excel下拉選單儲存格

在Excel裏,為了方便快速輸入選項(Options),可以製作下拉選單式的儲存格。先選擇儲存格,再依照下面步驟設定即可,它的來源可以自訂輸入,也可來自其他選取的儲存格,設定完成後,其他的儲存格直接用複製蓋上即可套用它的設定。

DropDownList Cell

若用程式讀取這些下拉儲存格,實際上得到就是它的Text文字,並無特殊之處。

2014-02-24

去除斷行字元SQL指令

資料庫文字欄位裏若想去除斷行字元「\r\n」,可以使用下面簡易的SQL語法:

 BreakLine Replace

2014-02-21

麥克風背景降噪設定

不知何時,我的MSI微星筆記本電腦的麥克風在錄音時會有背景低沉噪音,原誤以為是國產筆本風扇太吵影響,後來透過以下的Windows設定,即可為NB內建麥克風降噪。

Mic Noise Suppression

2014-02-20

Aspose.Cells在Excel中取值

Aspose.Cells for .NET是一套處理Excel寫入或導出的商業元件,它的系列元件對於處理微軟Office原生文件都挺好的。

當在一個Excel取值時,它的寫法為:sheet.Cells[row, col].Value
然而這object值遇到空欄位時,其值為null,這在Excel讀檔裏極大機率會遇到,因此每次讀取時得先判斷是不是null,因此C#會用到??這運算子。

但每讀一個Cell就得判斷null一次,實在是很冗長,發現在Cell類別裏有IntValue, StringValue, DateTimeValue, DoubleValue,BoolValue函式,我原以為它是為了簡化判斷null指定默認值用途,但發現遇到null欄位時,它會彈出例外而不是給予該型別的預設值。

Cell Value

Exception Details: Aspose.Cells.CellsException: Cell contains no data in Cell.

既然無法保證基本的null空值轉換,這些型別讀取函式實用性就大打折扣,不如自寫一個判斷處理泛形函式:

Generic Method

string cellValue1 = ReadAs<string>(sheet.Cells[row, col].Value, string.Empty);
int cellValue2 = ReadAs<int>(sheet.Cells[row, col].Value, 5000);
DateTime cellValue3 = ReadAs<DateTime>(sheet.Cells[row, col].Value, DateTime.Today);

如此一來,讀取Excel欄位時無論是否有值,就能避免null空值的問題了,除非資料本身是錯的,不過外面再包一層try/catch處理例外錯誤即可。

2014-02-15

石蓮花的截肢縮短

自己不專業地栽種石蓮花一段時間了,長期放在陽光不足的廚房後陽台,因此它具向光性變成「向日葵」,拚命往上長想多探點陽光,根莖變得很長而不優美。因此一段時間就會將整株截肢縮短。剛開始不識其卓越盛旺的生長力,都會怕不小心斷送其性命,其實它就算單葉平放不動它,單靠一片葉子裏的水份,也能活上月餘。
StoneFlower1

要截肢很簡單,直接在上方莖線斜切就行(儘量留著芽眼)。一般避免過濕爛掉,都是先置放一段時間等傷口乾燥再插入土,但我見識過它的生命力,切後直接插土,表土不過濕即可。

 StoneFlower2 

截肢過的石蓮花,要從切口長出根來需要一段時間,這時會耗掉外圍葉子的水份,等穩定後再拔除爛葉即可。由於種植的環境客觀上沒有足夠陽光,石蓮花註定長不成厚實的葉片,還會被鳥啄攻擊,命運著實乖桀。我只能透過換土、施肥、培植新芽,讓它們不斷地一代一代與環境搏鬥生存。

2014-02-12

Facebook手機版無法複製文字?

當你安裝安卓手機版Facebook時,會發現無法複製別人的文字,要轉貼至Line相當不便,至目前仍是這樣的。

FB Copy Text

目前唯一之道,就是使用手機裏的瀏覽器(Browser),開啟電腦版網頁(http://www.facebook.com)才能複製文字,而其手機版網頁(http://m.facebook.com)也不能複製文字喔! 這些Android提供的文字控件實在不夠人性啊!

2014-02-10

IIS 7.5的IP位址連線限制

IIS站台裏的應用程式在測試期間,通常只允許內部人員存取測試而己,因此得在IIS裏設定IP限制。IIS 7.5在IP的範圍限制寫法與前一版6.0不太一樣:
IP Access List 

請先執行「編輯功能設定」,將未指定IP都設為「拒絕」即可。相對地,若預設為「允許」模式,要達到預設全部拒絕,也可以在IP List最下方(優先權最低)新增一個「拒絕IP範圍」: 0.0.0.0/0.0.0.0
Default Access Mode

在IP Range設定裏,它使用遮罩mask的寫法,例如要開放「192.168.117.*」等內部IP存取,寫法如下:
IP Range