Kobarin's Development Blog

C#やASP.NETなどについての記録です。

C#

HtmlAgilityPackの基本

C#

HTMLからスクレイピングでデータを抜き出す際に使用しました。 現時点でわかった使用例を示します。 HTML code example <html> <head></head> <body> <h3>企業いろいろ</h3> <h4>コンビニ</h4> <ul> <li><a href="711.htm">セブン-イレブン</a></li> <li><a href="lawson.htm">ローソン</a></li> <li><a href="famima.htm">ファミリーマート</a></li> </ul> <h4>PC</h4> <ul> <li class="usa"></li></ul></body></html>

SqlCommandでReturnValueを取得

using (SqlCommand cmd = cn.CreateCommand()) { cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = @"upGetColor"; cmd.Parameters.Add("@name", SqlDbType.NvarChar).Value = "Red"; cmd.Parameters.Add("@code", SqlDbType.NvarChar).Di…

SqlCommandのParametersの値に、Nullを入れる

C#

まずは例から。 string _name = ""; (途中略) SqlCommand cmd = cn.CreateCommand(); cmd.Parameters.Add("name", SqlDbType.NVarChar).Value = _name; このような場合、_nameが空の際にはParameterにはNullを入れたいと仮定します。そこで通常、以下のよ…

C#でGoogle Reader のアイテムをGet

以下、参考にさせていただいたサイトです。 C#でGoogleリーダーのRSSを取得する1 C#でGoogleリーダーのRSSを取得する2 C#でGoogleリーダーのRSSを取得する3 【C#】Google Reader API で未読のアイテムを取得する方法 基本的には1〜3まででOKのはずですが、4…

C#で、数値文字参照をデコード

C#

ブラウザで見ると普通の文章でも、ソース表示すると「&#12345;」のように数字5桁を記号で挟んだ文字表記をしているサイトがある。 これは「数値文字参照」と呼ばれる。 これをデコード(人間が読めるような形式にする事)するには、.NETの場合これだけで出来…

ASP.NETでCSV出力

protected void Page_Load(object sender, EventArgs e) { System.Text.Encoding encoding = System.Text.Encoding.GetEncoding("Shift-JIS"); Response.AddHeader("Content-Disposition", "attachment;filename=date.csv"); //ファイル名 Response.ContentT…

ASP.NET(C#)でTwitter OAuth(日本語対応)

OAuthとC#でマルチバイト文字を扱う http://d.hatena.ne.jp/nyanp/20100504/p1要は、OAuthBase 内に以下のコードを追加して、 protected string UrlEncode(string value, Encoding encode) { StringBuilder result = new StringBuilder(); byte[] data = enc…

ASP.NETでTwitterのOauthを使う

1. まずTwitterアプリケーションを登録 http://twitter.com/apps2. 「consumer key」と「consumer secret」を取得3. ASP.NETサイトを開く4. web.configを開き、<appSettings>に以下のように記述。「・・・」には、それぞれのキーを記入。 5. 以下ページに…

C#で、RFC 882形式の日付をDateTimeに変換

C#

結構厄介で、普通にDateTime.Parse(string)では変換できません。 Regexを使って文字列を少し組み替えてからParseしてやりましょう。 //変換対象となるRFC882形式日付。ここでは「2010/01/10 11:22:33」を示す。 string strInput = "Mon Jan 10 11:22:33 +00…

最速(たぶん)、Twitter API でタイムラインをTable化

言葉の使い方がイマイチかもしれませんが、 ようは、あるTwitterユーザーののつぶやきをTable(本解説ではGridView使用)に表示するプログラムを簡単につくってみました。本解説の対象者は、「ASP.NETでTwitterを呼び出すプログラムを、とりあえずコピペだけ…

C#で、NameSpace(名前空間)が指定されたXMLの読み込み

C#でNameSpaceの指定されたXMLの読み込み方法。 楽天トラベルのAPIを使って例示してみよう。 XML(一部省略) true true true 省略 Success 1 1 1 1 1 99999 サンプルホテル 省略 省略 readxml.aspx.cs protected void Page_Load(object sender, EventA…

C#の正規表現を使った置き換え

string strBefore = "2009/10/14"; Console.Write(strBefore); //「2009/10/14」と表示 Regex reg = new Regex("([0-9]+)/([0-9]+)/([0-9]+)"); strAfter = reg.Replace(strBefore, "$1-$2-$3"); Console.Write(strAfter); //「2009-10-14」と表示

C#ジェネリックで、クラスを動的配列化!

メモ程度に書いた記事がブクマされていたので、少し解説を加えたいと思います。 クラスをジェネリック(List)化する理由 ListはGridviewやRepeaterコントロールのDataSouceとしても使用できるため、 一般的によく使われるDataTableよりも、データ生成時点で…

CSVファイルのデータをSQLserverにインポート(TextFieldParser編)

string strPath = "c:\test.csv"; DataTable dt = new DataTable(); //Shift JISで読み込む using (Microsoft.VisualBasic.FileIO.TextFieldParser tfp = new Microsoft.VisualBasic.FileIO.TextFieldParser(strPath, System.Text.Encoding.GetEncoding(932)…

CSVファイルのデータをSQLserverにインポート(OleDb編)

string strDir = "d:\"; striing strFileName= "test.csv"; DataTable dt = new DataTable(); //CSVファイルのデータを、DataTableに変換 using (OleDbConnection con = new OleDbConnection()) { con.ConnectionString = String.Format("Provider=Microsoft…