酢ろぐ!

カレーが嫌いなスマートフォンアプリプログラマのブログ。

開発-C#

C#で東京メトロオープンデータAPIを使って駅情報(乗降人員数)を取得する

さて、今日もC#で東京メトロオープンデータAPIを使ってみましょう。本記事では、odpt:PassengerSurveyを指定して、駅情報(乗降人員数)を取得します。 東京メトロ駅情報を取得する 東京メトロの駅情報は、JSON.NETを使って取得したJSON-LD形式のデータをパー…

C#で東京メトロオープンデータAPIを使って駅情報を取得する

さて、今回も東京メトロオープンデータAPIを使ってみましょう。 タイトルでは駅情報を取得するとなっていますが、正しくはodpt:Stationで指定する東京メトロ駅情報を取得するです。 東京メトロ駅情報を取得する 東京メトロの駅情報は、JSON.NETを使って取得…

C#で東京メトロオープンデータAPIを使って路線情報を取得する

前回からの続きです。タイトルでは路線情報を取得するとなっていますが、正しくはodpt:Railwayで指定する東京メトロ路線情報を取得するです。 東京メトロ路線情報を取得する 東京メトロの路線情報は、JSON.NETを使って取得したJSON-LD形式のデータをパース(…

C#で東京メトロオープンデータAPIを使って遅延時間(遅延情報)を取得する

先週末、東京メトロオープンデータ活用コンテストに向けて、@daisuke_nomura がミニ勉強会を開いてくれました。東京メトロオープンデータ活用コンテストについてはこちらのページをご覧ください。 取得可能なデータに関しては下記の通りです。 東京メトロ全…

C#でローカルマシンのIPアドレスが変更されたことを検出する

アプリをバックグランドで起動させておいてIPアドレスに変化がないのか監視するのもよさそうだったのですが、そんなにクリティカルな問題でもないのでアプリを常駐させるよりも定刻でチェックすればよいという話になりました。 ということで、C#を使ってロー…

C#で政治データAPIを使って日本の政治家一覧を取得する

MA10に向けて何か作ろうかなと思って各社提供のWebAPIを色々と触っています。本記事では、KPI社のC#を使って政治データAPIの政治家データを取得します。 API Ref | Seiji.kpi-net.com 事前準備 政治データAPIはレスポンスにxmlとjsonを選択することが可能で…

C#とCoreTweetを使って簡単にTwitterへツイートするbotを作る

しばやんが日々のブログのPV数をツイートするために、Google Analytics APIを使う方法を書いていました。 Google Analytics API を使って前日の PV を取得するコードを C# で書いてみた - しばやん雑記 どうやら、なかじさんがPVツイートbotを作る流れに乗っ…

自動エアコン調整システムを考える(2) - C#でtesseract-ocrを使って数値を取得する

我が家にはみそあんというキンクマハムスター(長毛種)という天使がいることは前回「自動エアコン調整システムを考える(1) - 部屋の間取りとシステムの基本構成 - 酢ろぐ!」の記事で書きました。今回は室温を取得するためにどうしたら良いのかを検討していき…

AWS SDK for .NETを使ってAmazon Simple Storage Service(S3)にファイルをアップロードする

AWS SDK for .NETを使ってAmazon Simple Storage Service(Amazon S3)にファイルをアップロードしてみましょう。 AWS SDKをインストールする NuGetを使って「AWS SDK for .NET」をインストールします。 ファイルをアップロードする ボタンをクリックするとピ…

Windowsストアアプリでタスクの処理完了の通知を受け取る

既に作成したタスクに対して、継続する処理を追加します。一通りの処理を完了した後にContinueWithメソッドで追加したActionを実行します。 var task = Task.Run(() => { Debug.WriteLine("task start"); // NOTE:すごい時間のかかる処理をしているつもり ne…

Windowsストアアプリでタスクの並列処理をおこなう

Parallel.Invoke(() => { Debug.WriteLine("task1 start"); // NOTE:すごい時間のかかる処理をしているつもり new Task(() => { }).Wait(1000); Debug.WriteLine("task1 end"); }, () => { Debug.WriteLine("task2 start"); // NOTE:すごい時間のかかる処理…

iOSアプリからWindowsストアアプリやXamarin.iOSへ移植したい方へ。Objective-C to C#変換ツール「Automagical」が出ました

生存戦略しましょう! by Akkun on pixiv スマートフォンアプリ開発に従事している方は、案件によってC#(Windows Mobile、Windowsストアアプリ)であったりObjective-C(iPhone/iPad)であったり、Java(Android)であったり各プラットフォームによって様々な言語…

C#でISBN-13からISBN-10へ変換する/ISBN-10からISBN-13へ変換する

個人的にネットで書籍を買う時に使うのが楽天ブックスとAmazonです。 どちらのショップでもISBNの表記を見つけられるはずです。ISBNとは書籍を管理する番号です。ISBNの規格には10桁で管理するISBNと13桁で管理するISBN-13が存在しています。 基本的にはISBN…

C#を使って楽天証券にログインしてセッションIDを取得する

大納会に近付きつつある今日この頃です。 過去に株売買の自動システムを作ろうとしていた時期がありました。プロジェクトからソースコードを切り出して下記のようにいくつかブログにも書いてたことがありました。 C#を使って楽天証券のMarketSpeedへの自動ロ…

Windows Phoneでアプリリソースのファイルを分離ストレージにコピーする

アプリケーション内に存在しているビルドアクションを「コンテンツ」にした画像ファイルを、分離ストレージにコピーします。 アプリリソースとして存在しているimage01.gif〜image07.gifのストリームを取得して、分離ストレージのユーザーストアにファイルを…

列挙型変数に0が代入できる

http://msdn.microsoft.com/ja-jp/library/aa691283.aspx 暗黙の列挙値変換を利用すると、decimal-integer-literal の 0 を任意の列挙型に変換できます。 暗黙の列挙値変換があるのを初めて知りました。ちょっとビックリ 例えばこんな型があるとします。 enu…

Windows Phoneでmarkdownで書いたテキストをhtmlに変換して表示する

この記事は、Windows Phone Advent Calendar 2013の8日目です。 markdownって知っていますか? 普段のメモもはてダ記法で書くくらい傾倒していた私ですが、markdownに触れてからというものこのブログ「酢ろぐ!」やWordPressで運用している「SOFTBUILD」でma…

.NET Framework APIの型をWindows Runtime APIの型を変換する

本日は、Windowsストアアプリ Advent Calendarの第7日目です。 Windowsストアアプリでは、.NET Framework APIとWinRT APIの両方を混在させて扱うことができます。 仕事柄ダウンロードしてきたファイルを扱ったり画像を扱ったりすることが多いので、System.IO…

WindowsストアアプリでWindows.Storage.Streams.IBuffer型のバッファとbyte型配列とを相互に変換する

byte[] → IBuffer byte型配列からWindows.Storage.Streams.IBufferの変換です。 usingディレクティブにSystem.Runtime.InteropServices.WindowsRuntimeを宣言しておくことによって拡張メソッドが使用できるようになります。 byte型配列の拡張メソッドのAsBuf…

WindowsストアアプリでファイルパスとStorageFileから拡張子を取得する

パスから拡張子を取得する System.IO名前空間のPathクラスのGetExtensionメソッドを使用します。 var url = "http://example.net/39804785_m.jpg"; var ext = System.IO.Path.GetExtension(url); 上記のサンプルコードを実行するとextには.jpgが格納されてい…

WindowsストアアプリでLINQを使ってクエリ文字列(URLパラメータ)を簡単に作る

下記のようによく見かけるURL形式があります。 http://example.com/action?param1=hoge&param2=hige 「?」以降のparam1=hoge&param2=higeの部分をクエリ文字列(URLパラメータ)と呼びます。 string.Formatメソッドを使ってhogeとhigeの部分を当てはめる方法も…

C#でジャンプリストを表示する

ソリューションエクスプローラーの[参照設定]を右クリックして、参照マネージャーからPresentationFrameworkを追加します。 JumpTaskオブジェクトを生成して、JumpListオブジェクトに詰め込んでApplyメソッドを使って適用させます。 using System; using Sys…

Windowsストアアプリで共有チャームを使わずにメールアプリを起動する(メールを送信する)

Windowsストアアプリでは共有コントラクトを使用したチャーム経由での共有機能が備わっています。 共有コントラクトの仕組みについては「Windowsストアアプリの共有コントラクトの仕組み - 酢ろぐ!」、共有コントラクトを使ってデータを共有する方法につい…

C#でコマンドライン引数を取得する

C#でパラメータを指定して実行した時に、プログラム側でパラメータを拾いたいです。System名前空間のEnvironmentクラスのGetCommandLineArgsメソッドを使えば、コマンドライン引数を取得することが可能です。 [STAThread] static void Main() { // コマンド…

LINQを使って特定の文字列が格納されているインデックスを取得する

文字列を格納した配列があり、LINQを使って特定の文字列が格納されているインデックスが知りたいことがあります。 var list = new[] { "松平", "上杉", "木下", "津田", "島津", "木下", "尼子" }; var foundItems = list.Select((item, index) => new { Ind…

Windowsストアアプリで現在表示に使われている言語を取得する

Windowsストアアプリで、ユーザーによって現在の表示設定されている言語を取得します。 現在、表示に使われている言語を取得する Windows.Globalization名前空間を使って表示言語を取得する Windows.Globalization名前空間のApplicationLanguagesクラスのLan…

WindowsストアアプリでC++/Cxで作ったネイティブライブラリをプラットフォームによって参照するdllアセンブリを切り替えたい

大昔にhttp://ch3cooh.hatenablog.jp/entry/20130124/1359015988のですが、Surface RT(ARM)向けとパソコン(x86)向けではCPUアーキテクチャが異なるため、同じネイティブライブラリを使うことができません。 ということで、本記事では、プラットフォームごと…

C#を使ってTwitterでシェアされたツイートの数を調べる

記事がシェアされた数を調べる方法がないか考えていると、Googleリーダーのトップに「la casa de nieve » Blog Archive » twitterのURLシェア数をAPI1廃止後でも(たぶん)取得できる方法」が掲載されていました。 Twitterでシェアされた数というのは、うち…

Xamarin.iOSで乱数を使う

乱数を取得するには、System名前空間のRandomクラスを使います。 乱数を取得する Random r = new Random(); var randomNumber = r.Next(); 0以上10未満の乱数を取得する Random r = new Random(); var randomNumber = r.Next(10); 5以上10未満の乱数を取得す…

Windows PhoneでGeoCoordinateWatcher(GPS/位置情報測位)クラスを使って位置情報を取得する

概要 Windows Phone Location Serviceへアクセスする手段を提供してます。 Windows Phone 7.5("Mango"アップデート)からはWindows Phone エミュレータの標準機能としてGPSシミュレータが付きますが、それ以前の開発環境では「GPSをエミュレートする」を参考…