[說好今夜不談程式] 原來每個月十四號都是情人節?!

2012-11-23

這幾天看一個中國的節目影片,笑炸我了..
分享給大家看一下..



[C#] 與Android共舞–透過GET方式傳資料給Server(含解決中文編碼問題)

2012-11-22


上一篇文章分享了透過POST 方式傳資料回Server,這一篇來談談有關於透過GET的方式傳遞
首先,如我預期的一樣,透過網址傳遞,會產生編碼問題,這邊我就順代解掉,希望有碰到的人
可以不用為此煩惱..
解說一下範例,手機傳遞給Server後,Server收到參數,直接印出來,然後手機再將資料取回,非常的簡單流程
中間只有傳遞不處理任何資料..


[C#][ASP.net] 透過 HttpWebRequest 模擬Client上傳檔案

 

事情是這樣子的(抖哥如是說),因為常常會跟其他開發技術合作像是 JSP or PHP ..

他們會跟你說我們上傳檔案是這樣子的..然後給你一個Sample Code :

Client :


<form action = "http://192.168.1.100/uploadFile.jsp"
method="post" enctype="multipart/form-data">
Desc : <input type="text" name="iptDesc">
<br>
<input type="file" name="uploadFileName" />
<input type="submit" value="上傳" />
</form>


實際上,他可能是在Server這邊的內網,那我該如何這邊透過Server 端 把使用者傳給我的圖片上傳給他呢?!
這時候要透過 HttpWebRerequest 來做


[C#] 與Android共舞–手機post資料給Server


最近在搞安卓,跟Server溝通是一定要的,這範例很簡單,就是我在Android 上面,透過POST 的方式傳資料給

Server ,則Server 收到值後直接回傳, Server side 是用asp.net C# 寫作..

現在直接來看Code

Server 端(C#):

建立一個echo.aspx 在aspx 得部分除了第一行全部都拿掉

只剩下:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="echo.aspx.cs" Inherits="EchoService.echo" %>


[Android] 在XML中調整TextView的字體大小

2012-11-20

 

不必透過程式設定..

 

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_toRightOf="@+id/imageView1"
android:textSize = "44sp"
android:text="TextView" />


上述highline的地方,單位是sp 就可以設定文字大小


[C#][ASP.net] 透過WebBrowser 取得AJAX 後的網頁

2012-11-17


今天  Shih-Min 問我說,假設網頁一開始是AJAX 會載入一些資料,但是透過WebClient 去抓
抓到都是JavaScript 跟 AJAX 的原始碼,有辦法可以抓到AJAX 取完值之後的資料嗎?!
這需求,如果寫爬蟲可能也會有這需求..我的作法是這樣..
我是ASP.net 專案..
建立一個Class 記得要加入 System.Windows.Forms
2012-08-28_184816
這時候我建立一隻 Class 叫做 WebBrowserCrawler


[.Net] 透過 ILMerge.exe 將兩個DLL 檔合成

2012-11-16



有時候要引入的外部的DLL 非常的多,今天試了工具,但是他們主要都是拿來做Winform 程式
都要我放入一個exe 檔,但是我的專案是ASP.net 阿..
結果我去測試了 aspnet_merge 的東西
參考網址: http://www.asp.net/web-forms/videos/how-do-i/how-do-i-use-the-aspnet_mergeexe-utility-to-merge-assemblies
實在是有夠給他複雜..
最後發現不要用 GUI 程式 直接使用 commandline 下指令就可以了


[C#] 刪除唯讀檔案

2012-11-15

 

之前在測試Lucene.net 的時候,常發生一件事情,就是我有些檔案被設定成唯讀

造成我無法重新製作索引..

 

當我一般下刪除檔案或是檔案夾的時候

var dirInfo = new System.IO.DirectoryInfo(AppDomain.CurrentDomain.BaseDirectory.ToString() + "Source\\");
dirInfo.Delete(true);


會出現



2012-08-22_120006




[C#] 如何洗亂 List

2012-11-14


這問題很好玩,之前跟 The God of Excel -智揚學長 在旅行途中一直在想這問題..Orz..
剛好這幾天有遇到這樣的需求,因為老闆希望撈出來的商品,不要順序都一樣,是否可以增加變化感..
又再度引發公司熱烈討論,這問題真是令人著迷?!
無論是效率,或是方法真的都很好玩..
下面是我提供的方法..我在List 中先依序放入 1~50
之後再丟入ShuffleList中將它洗亂…
依序放入 1~ 50 :


[C#] 找尋string array 中是否有某一string

 

問題很簡單,有很笨的做法就是跑foreach 去查,但是已經到了21世紀,可以用LINQ語法來辦到

string[] pool = "AB,B,C,D".Split(',');

// true
MessageBox.Show((pool.Any(s => "B".Contains(s)).ToString()));

//true
MessageBox.Show((pool.Any(s => "AB".Contains(s)).ToString()));

//false
MessageBox.Show((pool.Any(s => "A".Contains(s)).ToString()));



假設 這 string array 為 AB,A,C,D


之後判斷是只要這樣寫就可以了

if (StringArray.Any(s => TargetString.Contains(s)))
 


[Windows8] 開始不見了,外掛來解決

2012-11-13

 

Windwos 8 的新版 UI ,是一個新的思維,很適合平板,但是對於這十幾年來的習慣.

一時之間難以習慣..這時候外掛出現了..

2012-11-13_015014
下載位址 : http://www.startbutton8.com/zh-tw/

如果還不習慣的話,快去下載吧…


[說好今夜不談程式] Chrome的Flash Player 為啥沒有聲音


這幾天重新安裝電腦,結果Chrome 播放 Youtube 卻沒有聲音..(悶~
網路上試過很多方法,還有移除音效卡的= = ..後來我找到這方法.
1. 首先打開你的Chrome 在網址 輸入  chrome://plugins/
2012-11-13_000707


[C#] 找尋字串中是否包含某字詞..

2012-11-08

 

假設字串是 "HELLO,IamAString" 我是搜尋 是否包含 string 這字..

會因為大小寫關係..所以可能會搜尋不到…

所以,我能想到的寫法為這幾種…

 

1.  使用 IndexOf 判斷

var isContain = "HELLO,IamAString".IndexOf("string", StringComparison.OrdinalIgnoreCase) >= 0;


2. 先將字串轉成大寫/小寫 之後再用Contains 比對


var isContain = "HELLO,IamAString".ToUpper().Contains("STRING");



3. 使用Regular Expression


var isContain = Regex.Match("HELLO,IamAString", "string", RegexOptions.IgnoreCase).Success;



這時候我在想,哪一個效率比較好,所以做了一個很簡單的測試


我使用一個List 裡面擺物件(剛好正寫到一半的專案就進行測試)
其中的Name 我跑迴圈 放入一百萬筆資料 分別他們的Name 欄位是User1~User1000000 這時候我進行搜尋 ER5 這字串看看哪 個速度比較快


[C#] 使用 Fasterflect 進行快速反射

2012-11-07

 

之前一篇文章 [C#] 搜尋 T 裡面是否有某屬性中有某關鍵字

提到有關於 反射找出T 是否某一Property 帶有某值..

套一句 運轉手之戀這部電影說過的話..那時候我一值在想,如果再快一點會怎麼樣?!

之前的案例..

/// <summary>
/// 搜尋是否物件某屬性中是否帶有某關鍵字
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="lists"></param>
/// <param name="propertyName">屬性名</param>
/// <param name="propertyValue">是否包含某關鍵字</param>
/// <returns></returns>
public T[] SearchListPropertyValue<T>(List<T> lists, string propertyName, string propertyValue)
{
    List<T> re = new List<T>();
 
 
    return
        lists.Where(
            x => x.GetType().GetProperty(propertyName).GetValue(x, null).ToString().IndexOf(propertyValue, StringComparison.OrdinalIgnoreCase) >= 0).
            ToArray();
 
}


這時候我們呼叫 一個 擁有一百萬個物件的List


[C#][小技巧] double 轉字串問題,我不要 +E

2012-11-06

 

這需求有點詭異,但是依然就是發生了,

一個double 數值

double doubleValue = 900000000 * 9000000000 + 9000000000;
把他轉成 string 會長怎樣呢?!

答案是  8.100000009E+18


這不是我預期的答案,就人類世界來看我希望看到的數字是 8100000009000000000


這時候要動點小手腳( 嘆氣~~



[C#] 超級方便的 ExpandoObject 類別

 

這東西是 .NET Framework 4.0 的東西..

發現這個,大概就跟發現新大陸一樣的興奮,讓我再次讚嘆 Anders Hejlsberg 之神..

這邊有MSDN : http://msdn.microsoft.com/en-us/library/system.dynamic.expandoobject.aspx

簡單看一下他方便的地方..


[C#] Web Service 移除 xmlns

2012-11-05

 

最近因為一些業主要求,所以他需要我吐出去Web Service 的 XML 不能帶有  xmlns ..

也就是 原本是

2012-09-10_113819

但是他們家DEV 希望看的是

2012-09-10_113934

也真夠懶得…

不過付錢者大,看一下原本一開始的ASMX 檔案 是長這樣…


[C#] 透過DTD 驗證XML 完整性

2012-11-03

 

解別人問的問題,可不可以透過C# 來驗證某一份XML 是否符合DTD 的規範,

已經給他範例 http://msdn.microsoft.com/en-us/library/z2adhb2f.aspx

但是他說他要在一個function 內做完,因為生命週期的關係,最後非常懶得包Class 來做..

最後用這樣的解法…

順帶一提: (DTD)是一種可定義合法的XML文檔構建模塊。它使用一系列合法的元素來定義文檔的結構。

所以簡單的說DTD 可以用來驗證一個XML 是否是自己要的文法


[C#] Regex筆記- 取得網頁META 紀錄的內容

2012-11-02

 

又到了Regex 時間,因為寫Regex 方法百百種,所以有碰到就紀錄一下,

今天遇到的問題,就是如何知道這網頁內容是啥東西,當然我可以用這招..Regex筆記- 移除所有HTML tag + 移除 JavaScript

但是這內容很多,所以我決定從網頁META 內容下手,如果沒有再去取<TITLE> 裡面的資料,在沒有真的去抓CONTENT

但是現在越來越多人會去寫META 了 ..

通常網頁來說 META 會長這樣..


<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta name="discription" content="當麻許Silverlight學習筆記" />
<meta name="keywords" content="六月羊,當麻許,Silverlight,D小調,C#" />
<meta name="keywords" content="C#,ASP.net,Regex" />
<meta name="author" content="當麻許" />
<meta name="description" content="最近公司需求,需要parse 一些資料,就趁這機會筆記一下..需求是找出網頁中,所有的超連結位置.." />


所以name 跟 content 這屬性是我要的..


[C#] Regex筆記- 取得網頁Youtube 相關訊息

2012-11-01


之前寫過但是有人問,所以最近又再整理一次..
想說紀錄一下..

基本上就是不去讀API 透過取得網頁然後parse 相關資訊回來
請注意,此文章為教學用,請勿拿去做非法用途,否則法律行為請自行負責

而且基本上這種作法,只要Youtube 官方改網頁規格就失效拉..

所以讀API才是王道..
2012-09-25_131541
我要取得資訊如下..


當麻許的超技八 2014 | Donma Hsu Design.