<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>sikios &#187; C#</title>
	<atom:link href="http://sikios.com/wordpress/category/computer/programing/csharp/feed/" rel="self" type="application/rss+xml" />
	<link>http://sikios.com/wordpress</link>
	<description>C++とかC#とか</description>
	<lastBuildDate>Thu, 03 May 2012 11:32:41 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>コードページ一覧</title>
		<link>http://sikios.com/wordpress/20100215/%e3%82%b3%e3%83%bc%e3%83%89%e3%83%9a%e3%83%bc%e3%82%b8%e4%b8%80%e8%a6%a7/</link>
		<comments>http://sikios.com/wordpress/20100215/%e3%82%b3%e3%83%bc%e3%83%89%e3%83%9a%e3%83%bc%e3%82%b8%e4%b8%80%e8%a6%a7/#comments</comments>
		<pubDate>Sun, 14 Feb 2010 22:04:24 +0000</pubDate>
		<dc:creator>rei</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[コンピュータ]]></category>
		<category><![CDATA[codepage]]></category>

		<guid isPermaLink="false">http://sikios.com/wordpress/?p=698</guid>
		<description><![CDATA[37 IBM037 IBM EBCDIC (US &#8211; カナダ) 437 IBM437 OEM アメリカ合衆国 500 IBM500 IBM EBCDIC (インターナショナル) 708 ASMO-708 アラ ]]></description>
			<content:encoded><![CDATA[<p>   37 IBM037                   IBM EBCDIC (US &#8211; カナダ)<br />
  437 IBM437                   OEM アメリカ合衆国<br />
  500 IBM500                   IBM EBCDIC (インターナショナル)<br />
  708 ASMO-708                 アラビア語 (ASMO 708)<br />
  720 DOS-720                  アラビア語 (DOS)<br />
  737 ibm737                   ギリシャ語 (DOS)<br />
  775 ibm775                   バルト言語 (DOS)<br />
  850 ibm850                   西ヨーロッパ言語 (DOS)<br />
  852 ibm852                   中央ヨーロッパ言語 (DOS)<br />
  855 IBM855                   OEM キリル<br />
  857 ibm857                   トルコ語 (DOS)<br />
  858 IBM00858                 OEM マルチリンガル ラテン I<br />
  860 IBM860                   ポルトガル語  (DOS)<br />
  861 ibm861                   アイスランド語 (DOS)<br />
  862 DOS-862                  ヘブライ語 (DOS)<br />
  863 IBM863                   フランス語 (カナダ) (DOS)<br />
  864 IBM864                   アラビア語 (864)<br />
  865 IBM865                   北欧 (DOS)<br />
  866 cp866                    キリル言語 (DOS)<br />
  869 ibm869                   ギリシャ語, Modern (DOS)<br />
  870 IBM870                   IBM EBCDIC (多国語ラテン 2)<br />
  874 windows-874              タイ語 (Windows)<br />
  875 cp875                    IBM EBCDIC (ギリシャ語 Modern)<br />
  932 shift_jis                日本語 (シフト JIS)<br />
  936 gb2312                   簡体字中国語 (GB2312)<br />
  949 ks_c_5601-1987           韓国語<br />
  950 big5                     繁体字中国語 (Big5)<br />
 1026 IBM1026                  IBM EBCDIC (トルコ語ラテン 5)<br />
 1047 IBM01047                 IBM ラテン-1<br />
 1140 IBM01140                 IBM EBCDIC (US &#8211; カナダ &#8211; ヨーロッパ)<br />
 1141 IBM01141                 IBM EBCDIC (ドイツ &#8211; ヨーロッパ)<br />
 1142 IBM01142                 IBM EBCDIC (デンマーク &#8211; ノルウェー &#8211; ヨーロッパ)<br />
 1143 IBM01143                 IBM EBCDIC (フィンランド &#8211; スウェーデン &#8211; ヨーロッパ)<br />
 1144 IBM01144                 IBM EBCDIC (イタリア &#8211; ヨーロッパ)<br />
 1145 IBM01145                 IBM EBCDIC (スペイン &#8211; ヨーロッパ)<br />
 1146 IBM01146                 IBM EBCDIC (UK &#8211; ヨーロッパ)<br />
 1147 IBM01147                 IBM EBCDIC (フランス &#8211; ヨーロッパ)<br />
 1148 IBM01148                 IBM EBCDIC (インターナショナル &#8211; ヨーロッパ)<br />
 1149 IBM01149                 IBM EBCDIC (アイスランド語 &#8211; ヨーロッパ)<br />
 1200 utf-16                   Unicode<br />
 1201 unicodeFFFE              Unicode (Big-Endian)<br />
 1250 windows-1250             中央ヨーロッパ言語 (Windows)<br />
 1251 windows-1251             キリル言語 (Windows)<br />
 1252 Windows-1252             西ヨーロッパ言語 (Windows)<br />
 1253 windows-1253             ギリシャ語 (Windows)<br />
 1254 windows-1254             トルコ語 (Windows)<br />
 1255 windows-1255             ヘブライ語 (Windows)<br />
 1256 windows-1256             アラビア語 (Windows)<br />
 1257 windows-1257             バルト言語 (Windows)<br />
 1258 windows-1258             ベトナム語 (Windows)<br />
 1361 Johab                    韓国語 (Johab)<br />
10000 macintosh                西ヨーロッパ言語 (Mac)<br />
10001 x-mac-japanese           日本語 (Mac)<br />
10002 x-mac-chinesetrad        繁体字中国語 (Mac)<br />
10003 x-mac-korean             韓国語 (Mac)<br />
10004 x-mac-arabic             アラビア語 (Mac)<br />
10005 x-mac-hebrew             ヘブライ語 (Mac)<br />
10006 x-mac-greek              ギリシャ語 (Mac)<br />
10007 x-mac-cyrillic           キリル言語 (Mac)<br />
10008 x-mac-chinesesimp        簡体字中国語 (Mac)<br />
10010 x-mac-romanian           ルーマニア語 (Mac)<br />
10017 x-mac-ukrainian          ウクライナ語 (Mac)<br />
10021 x-mac-thai               タイ語 (Mac)<br />
10029 x-mac-ce                 中央ヨーロッパ言語 (Mac)<br />
10079 x-mac-icelandic          アイスランド語 (Mac)<br />
10081 x-mac-turkish            トルコ語 (Mac)<br />
10082 x-mac-croatian           クロアチア語 (Mac)<br />
12000 utf-32                   Unicode (UTF-32)<br />
12001 utf-32BE                 Unicode (UTF-32 ビッグ エンディアン)<br />
20000 x-Chinese-CNS            繁体字中国語 (CNS)<br />
20001 x-cp20001                TCA 台湾<br />
20002 x-Chinese-Eten           繁体字中国語 (Eten)<br />
20003 x-cp20003                IBM5550 台湾<br />
20004 x-cp20004                TeleText 台湾<br />
20005 x-cp20005                Wang 台湾<br />
20105 x-IA5                    西ヨーロッパ言語 (IA5)<br />
20106 x-IA5-German             ドイツ語 (IA5)<br />
20107 x-IA5-Swedish            スウェーデン語 (IA5)<br />
20108 x-IA5-Norwegian          ノルウェー語 (IA5)<br />
20127 us-ascii                 US-ASCII<br />
20261 x-cp20261                T.61<br />
20269 x-cp20269                ISO-6937<br />
20273 IBM273                   IBM EBCDIC (ドイツ)<br />
20277 IBM277                   IBM EBCDIC (デンマーク &#8211; ノルウェー)<br />
20278 IBM278                   IBM EBCDIC (フィンランド &#8211; スウェーデン)<br />
20280 IBM280                   IBM EBCDIC (イタリア)<br />
20284 IBM284                   IBM EBCDIC (スペイン)<br />
20285 IBM285                   IBM EBCDIC (UK)<br />
20290 IBM290                   IBM EBCDIC (日本語カタカナ)<br />
20297 IBM297                   IBM EBCDIC (フランス)<br />
20420 IBM420                   IBM EBCDIC (アラビア語)<br />
20423 IBM423                   IBM EBCDIC (ギリシャ語)<br />
20424 IBM424                   IBM EBCDIC (ヘブライ語)<br />
20833 x-EBCDIC-KoreanExtended  IBM EBCDIC (韓国語 Extended)<br />
20838 IBM-Thai                 IBM EBCDIC (タイ語)<br />
20866 koi8-r                   キリル言語 (KOI8-R)<br />
20871 IBM871                   IBM EBCDIC (アイスランド語)<br />
20880 IBM880                   IBM EBCDIC (キリル言語 &#8211; ロシア語)<br />
20905 IBM905                   IBM EBCDIC (トルコ語)<br />
20924 IBM00924                 IBM ラテン-1<br />
20932 EUC-JP                   日本語 (JIS 0208-1990 および 0212-1990)<br />
20936 x-cp20936                簡体字中国語 (GB2312-80)<br />
20949 x-cp20949                韓国語 Wansung<br />
21025 cp1025                   IBM EBCDIC (キリル言語 セルビア &#8211; ブルガリア)<br />
21866 koi8-u                   キリル言語 (KOI8-U)<br />
28591 iso-8859-1               西ヨーロッパ言語 (ISO)<br />
28592 iso-8859-2               中央ヨーロッパ言語 (ISO)<br />
28593 iso-8859-3               ラテン 3 (ISO)<br />
28594 iso-8859-4               バルト言語 (ISO)<br />
28595 iso-8859-5               キリル言語 (ISO)<br />
28596 iso-8859-6               アラビア語 (ISO)<br />
28597 iso-8859-7               ギリシャ語 (ISO)<br />
28598 iso-8859-8               ヘブライ語 (ISO-Visual)<br />
28599 iso-8859-9               トルコ語 (ISO)<br />
28603 iso-8859-13              エストニア語 (ISO)<br />
28605 iso-8859-15              ラテン 9 (ISO)<br />
29001 x-Europa                 ヨーロッパ<br />
38598 iso-8859-8-i             ヘブライ語 (ISO-Logical)<br />
50220 iso-2022-jp              日本語 (JIS)<br />
50221 csISO2022JP              日本語 (JIS 1 バイト カタカナ可)<br />
50222 iso-2022-jp              日本語 (JIS 1 バイト カタカナ可 &#8211; SO/SI)<br />
50225 iso-2022-kr              韓国語 (ISO)<br />
50227 x-cp50227                簡体字中国語 (ISO-2022)<br />
51932 euc-jp                   日本語 (EUC)<br />
51936 EUC-CN                   簡体字中国語 (EUC)<br />
51949 euc-kr                   韓国語 (EUC)<br />
52936 hz-gb-2312               簡体字中国語 (HZ)<br />
54936 GB18030                  簡体字中国語 (GB18030)<br />
57002 x-iscii-de               ISCII デバナガリ文字<br />
57003 x-iscii-be               ISCII ベンガル語<br />
57004 x-iscii-ta               ISCII タミール語<br />
57005 x-iscii-te               ISCII テルグ語<br />
57006 x-iscii-as               ISCII アッサム語<br />
57007 x-iscii-or               ISCII オリヤー語<br />
57008 x-iscii-ka               ISCII カナラ語<br />
57009 x-iscii-ma               ISCII マラヤラム語<br />
57010 x-iscii-gu               ISCII グジャラート語<br />
57011 x-iscii-pa               ISCII パンジャブ語<br />
65000 utf-7                    Unicode (UTF-7)<br />
65001 utf-8                    Unicode (UTF-8)</p>
<p>C#では以下のコードで取得できます。<br />
(ファイルに書き込んでいます。)</p>
<div class="codecolorer-container csharp twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:550px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br /></div></td><td><div class="csharp codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.IO</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.Text</span><span style="color: #008000;">;</span><br />
<br />
<span style="color: #0600FF; font-weight: bold;">namespace</span> Encodings <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #6666cc; font-weight: bold;">class</span> Program <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">static</span> <span style="color: #6666cc; font-weight: bold;">void</span> Main<span style="color: #008000;">&#40;</span><span style="color: #6666cc; font-weight: bold;">string</span><span style="color: #008000;">&#91;</span><span style="color: #008000;">&#93;</span> args<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008000;">&#40;</span>StreamWriter writer <span style="color: #008000;">=</span> File<span style="color: #008000;">.</span><span style="color: #0000FF;">CreateText</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;codepage.txt&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">foreach</span> <span style="color: #008000;">&#40;</span>var i <span style="color: #0600FF; font-weight: bold;">in</span> Encoding<span style="color: #008000;">.</span><span style="color: #0000FF;">GetEncodings</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; writer<span style="color: #008000;">.</span><span style="color: #0000FF;">WriteLine</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;{0,5} {1,-24} {2}&quot;</span>, i<span style="color: #008000;">.</span><span style="color: #0000FF;">CodePage</span>, i<span style="color: #008000;">.</span><span style="color: #0000FF;">Name</span>, i<span style="color: #008000;">.</span><span style="color: #0000FF;">DisplayName</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<span style="color: #008000;">&#125;</span></div></td></tr></tbody></table></div>
]]></content:encoded>
			<wfw:commentRss>http://sikios.com/wordpress/20100215/%e3%82%b3%e3%83%bc%e3%83%89%e3%83%9a%e3%83%bc%e3%82%b8%e4%b8%80%e8%a6%a7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WinSymLink ver1.2.0.0</title>
		<link>http://sikios.com/wordpress/20100102/winsymlink-ver-1-2-0-0/</link>
		<comments>http://sikios.com/wordpress/20100102/winsymlink-ver-1-2-0-0/#comments</comments>
		<pubDate>Fri, 01 Jan 2010 19:19:14 +0000</pubDate>
		<dc:creator>rei</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[コンピュータ]]></category>
		<category><![CDATA[ツール]]></category>
		<category><![CDATA[WinSymLink]]></category>

		<guid isPermaLink="false">http://sikios.com/wordpress/?p=261</guid>
		<description><![CDATA[ファイルのシンボリックリンクを作れるようになりました。 あと、ファイル名を引数にすることでコンソールからも実行できます。(ウィンドウなし) winsymlink.exe &#34;ファイル名orフォルダ名&#34;  ]]></description>
			<content:encoded><![CDATA[<p>ファイルのシンボリックリンクを作れるようになりました。</p>
<p>あと、ファイル名を引数にすることでコンソールからも実行できます。(ウィンドウなし)<br />
<code class="codecolorer dos twitlight"><span class="dos">winsymlink.exe &quot;ファイル名orフォルダ名&quot;</span></code><br />
シンボリックリンクが作成可能ならシンボリックリンクを、<br />
そうでなければジャンクションを作ります。<br />
ジャンクションも作成不可能な場合は何も行いません。</p>
<p><a href="http://sikios.com/data/wsl/WinSymLink_v1.2.0.0.zip">実行ファイル</a><br />
<a href="http://sikios.com/data/wsl/WinSymLink_v1.2.0.0_src.zip">ソース</a></p>
]]></content:encoded>
			<wfw:commentRss>http://sikios.com/wordpress/20100102/winsymlink-ver-1-2-0-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WinSymLink ver1.1.0.0</title>
		<link>http://sikios.com/wordpress/20091229/winsymlink-ver-1-1-0-0/</link>
		<comments>http://sikios.com/wordpress/20091229/winsymlink-ver-1-1-0-0/#comments</comments>
		<pubDate>Mon, 28 Dec 2009 17:49:25 +0000</pubDate>
		<dc:creator>rei</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[コンピュータ]]></category>
		<category><![CDATA[ツール]]></category>
		<category><![CDATA[WinSymLink]]></category>

		<guid isPermaLink="false">http://sikios.com/wordpress/?p=210</guid>
		<description><![CDATA[とりあえずWindows2000, XP に対応してみました。 まず、OSの制限によりXP以前ではシンボリックリンクは扱えません。 なので、ジャンクションのみの対応となります。 次に、コマンドラインツール junctio ]]></description>
			<content:encoded><![CDATA[<p>とりあえずWindows2000, XP に対応してみました。<br />
<a href="http://sikios.com/wordpress/wp-content/uploads/2009/12/wsl_1.1.0.0.png"><img src="http://sikios.com/wordpress/wp-content/uploads/2009/12/wsl_1.1.0.0-300x87.png" alt="" title="wsl_1.1.0.0" width="300" height="87" class="alignnone size-medium wp-image-215" /></a></p>
<p>まず、OSの制限によりXP以前ではシンボリックリンクは扱えません。<br />
なので、<span style="font-size:200%">ジャンクションのみ</span>の対応となります。<br />
次に、コマンドラインツール <span style="font-size:200%"><a href="http://technet.microsoft.com/ja-jp/sysinternals/bb896768.aspx" target="_blank">junction.exe</a> が必要</span>になります。<br />
(WinSymLink.exeと同じフォルダに置いてください)</p>
<p><strong>使い方</strong></p>
<ul type="square">
<li>対象フォルダを選択する。(D&#038;DでもOK)</li>
<li>「ジャンクション作成」をクリックして実行。</li>
<li>成功すれば「_junction」を付加した名前のジャンクションが出来ています。</li>
</ul>
<p><a href="http://sikios.com/data/wsl/WinSymLink_v1.1.0.0.zip">WinSymLink_v1.1.0.0.zip</a></p>
]]></content:encoded>
			<wfw:commentRss>http://sikios.com/wordpress/20091229/winsymlink-ver-1-1-0-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WinSymLink ver1.0.0.0</title>
		<link>http://sikios.com/wordpress/20091228/winsymlink-ver1-0-0-0/</link>
		<comments>http://sikios.com/wordpress/20091228/winsymlink-ver1-0-0-0/#comments</comments>
		<pubDate>Mon, 28 Dec 2009 14:47:44 +0000</pubDate>
		<dc:creator>rei</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[コンピュータ]]></category>
		<category><![CDATA[ツール]]></category>
		<category><![CDATA[WinSymLink]]></category>

		<guid isPermaLink="false">http://sikios.com/wordpress/?p=202</guid>
		<description><![CDATA[簡単にシンボリックリンクを作るソフトが欲しかったので作ってみました。 今のところはフォルダのリンクしか作れません（個人的にはこれで十分なため）。 OSの機能を使用しているためWindows Vista以降でしか使えません ]]></description>
			<content:encoded><![CDATA[<p>簡単にシンボリックリンクを作るソフトが欲しかったので作ってみました。<br />
<a href="http://sikios.com/wordpress/wp-content/uploads/2009/12/wsl_1.0.0.0.png"><img src="http://sikios.com/wordpress/wp-content/uploads/2009/12/wsl_1.0.0.0-300x87.png" alt="" title="wsl_1.0.0.0" width="300" height="87" class="alignnone size-medium wp-image-204" /></a><br />
今のところはフォルダのリンクしか作れません（個人的にはこれで十分なため）。<br />
OSの機能を使用しているためWindows Vista以降でしか使えません。<br />
ジャンクション機能を作って、なんとかXPにも対応させたいのですが。</p>
<p>もう少しまともなものになったらソースも公開します。<br />
<a href="http://sikios.com/data/wsl/WinSymLink_v1.0.0.0.zip">WinSymLink_v1.0.0.0.zip</a></p>
]]></content:encoded>
			<wfw:commentRss>http://sikios.com/wordpress/20091228/winsymlink-ver1-0-0-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>BigInteger</title>
		<link>http://sikios.com/wordpress/20091215/biginteger/</link>
		<comments>http://sikios.com/wordpress/20091215/biginteger/#comments</comments>
		<pubDate>Mon, 14 Dec 2009 20:06:28 +0000</pubDate>
		<dc:creator>rei</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[コンピュータ]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[.Net]]></category>

		<guid isPermaLink="false">http://sikios.com/wordpress/?p=199</guid>
		<description><![CDATA[.NET 4.0でようやく多倍長整数が導入されるようです。 型名はBigIntegerで、名前空間はSystem.Numerics、DLLはSystem.Numerics.dllです。 msdn VS2010+.NET4 ]]></description>
			<content:encoded><![CDATA[<p>.NET 4.0でようやく多倍長整数が導入されるようです。<br />
型名はBigIntegerで、名前空間はSystem.Numerics、DLLはSystem.Numerics.dllです。<br />
<a href="http://msdn.microsoft.com/ja-jp/library/system.numerics.biginteger(VS.100).aspx">msdn</a></p>
<p>VS2010+.NET4.0で動作確認済み。<br />
VS2008ではやはり無理っぽいです。</p>
<p>2.0の頃に次期バージョンで導入予定と言われていたので、だいぶ遅れていますね。<br />
でもこれで劣化版BigIntegerを自分で作る必要がなくなったのでなによりです。<br />
C++では既に作ってしまっているわけですが。</p>
]]></content:encoded>
			<wfw:commentRss>http://sikios.com/wordpress/20091215/biginteger/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Siki.Configure #1</title>
		<link>http://sikios.com/wordpress/20091127/siki-configure-1/</link>
		<comments>http://sikios.com/wordpress/20091127/siki-configure-1/#comments</comments>
		<pubDate>Fri, 27 Nov 2009 06:40:11 +0000</pubDate>
		<dc:creator>rei</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[コンピュータ]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://sikios.com/wordpress/?p=137</guid>
		<description><![CDATA[ソース自体は前回と殆ど変わってないんですが、簡単な説明を。 名前空間 Siki.Configure クラス GlobalConfigure XMLファイルとXML DOMの相互変換を行うクラス。 XML DOMのルートで ]]></description>
			<content:encoded><![CDATA[<p>ソース自体は前回と殆ど変わってないんですが、簡単な説明を。</p>
<hr size="1" />
<h4>名前空間 <a href="http://sikios.com/doxygen/sikios/namespace_siki_1_1_configure.html">Siki.Configure</a></h4>
<hr size="1" />
<h4>クラス <a href="http://sikios.com/doxygen/sikios/_global_configure_8cs_source.html">GlobalConfigure</a></h4>
<p>XMLファイルとXML DOMの相互変換を行うクラス。<br />
XML DOMのルートでもある。</p>
<hr size="1" />
<h4>クラス <a href="http://sikios.com/doxygen/sikios/_configure_node_8cs_source.html">ConfigureNode</a></h4>
<p>XMLの要素を表すツリーノード。<br />
このノードは1つの値と複数の子ノードを持つことができる。</p>
<hr size="1" />
<h4>クラス<a href="http://sikios.com/doxygen/sikios/_configure_event_args_8cs_source.html"> ConfigureEventArgs</a></h4>
<p>イベント引数。<br />
今のところ使用しない。</p>
<hr size="1" />
<h4>使用例 &#8211; フォームの位置とサイズを記録し、次回起動時に復元する</h4>
<p>使用する名前空間はSiki.Configure。</p>
<div class="codecolorer-container csharp twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:550px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br /></div></td><td><div class="csharp codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.Drawing</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.Windows.Forms</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">Siki.Configure</span><span style="color: #008000;">;</span><br />
<br />
<span style="color: #0600FF; font-weight: bold;">namespace</span> ConfigureSample <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #0600FF; font-weight: bold;">partial</span> <span style="color: #6666cc; font-weight: bold;">class</span> Form1 <span style="color: #008000;">:</span> Form <span style="color: #008000;">&#123;</span></div></td></tr></tbody></table></div>
<p>GlobalConfigureインスタンスにアクセスするためのプロパティ。</p>
<div class="codecolorer-container csharp twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:550px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>8<br />9<br />10<br />11<br /></div></td><td><div class="csharp codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">private</span> GlobalConfigure Configure <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; get<span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; set<span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span></div></td></tr></tbody></table></div>
<p>コンストラクタ。<br />
GlobalConfigureインスタンスの作成。<br />
ここでは設定ファイルにconfigure.xmlを指定。<br />
(別のコンストラクタを使えばディレクトリやXMLのルート要素なども指定できます。)<br />
フォームのLoadとFormClosingイベントにハンドラを設定。</p>
<div class="codecolorer-container csharp twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:550px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>12<br />13<br />14<br />15<br />16<br />17<br />18<br /></div></td><td><div class="csharp codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> Form1<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; InitializeComponent<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Configure <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> GlobalConfigure<span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;configure.xml&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Load <span style="color: #008000;">+=</span> <span style="color: #008000;">new</span> EventHandler<span style="color: #008000;">&#40;</span>Form1_Load<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; FormClosing <span style="color: #008000;">+=</span> <span style="color: #008000;">new</span> FormClosingEventHandler<span style="color: #008000;">&#40;</span>Form1_FormClosing<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">//StartPosition = FormStartPosition.Manual;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span></div></td></tr></tbody></table></div>
<p>Loadイベントハンドラで位置とサイズの復元を行う。<br />
FormClosingイベントハンドラで位置とサイズを記録し、設定ファイルに保存する。</p>
<div class="codecolorer-container csharp twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:550px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br /></div></td><td><div class="csharp codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">private</span> <span style="color: #6666cc; font-weight: bold;">void</span> Form1_Load<span style="color: #008000;">&#40;</span><span style="color: #6666cc; font-weight: bold;">object</span> sender, EventArgs e<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; RestoreLocation<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; RestoreSize<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">private</span> <span style="color: #6666cc; font-weight: bold;">void</span> Form1_FormClosing<span style="color: #008000;">&#40;</span><span style="color: #6666cc; font-weight: bold;">object</span> sender, FormClosingEventArgs e<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; SaveLocation<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; SaveSize<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Configure<span style="color: #008000;">.</span><span style="color: #0000FF;">Save</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span></div></td></tr></tbody></table></div>
<p>位置の復元メソッド。<br />
Configureを使用し、連想配列のようにアクセスできる。<br />
返される値はすべてstringなので、他の型への変換は自分で行う必要がある。<br />
指定された要素が存在し、32ビット整数に変換可能ならばtry内で例外は発生しないはず。<br />
以下のコードで<br />
Configure["window"]<br />
Configure["window"]["location"]<br />
Configure["window"]["location"]["x"]<br />
は、いずれもConfigureNodeのインスタンスであり、stringへの変換は暗黙に行われる。</p>
<div class="codecolorer-container csharp twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:550px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br /></div></td><td><div class="csharp codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">void</span> RestoreLocation<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">try</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #6666cc; font-weight: bold;">string</span> strx <span style="color: #008000;">=</span> Configure<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;window&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;location&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;x&quot;</span><span style="color: #008000;">&#93;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;stry <span style="color: #008000;">=</span> Configure<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;window&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;location&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;y&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #6666cc; font-weight: bold;">int</span> x <span style="color: #008000;">=</span> Convert<span style="color: #008000;">.</span><span style="color: #0000FF;">ToInt32</span><span style="color: #008000;">&#40;</span>strx, <span style="color: #FF0000;">10</span><span style="color: #008000;">&#41;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; y <span style="color: #008000;">=</span> Convert<span style="color: #008000;">.</span><span style="color: #0000FF;">ToInt32</span><span style="color: #008000;">&#40;</span>stry, <span style="color: #FF0000;">10</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Location <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> Point<span style="color: #008000;">&#40;</span>x, y<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span> <span style="color: #0600FF; font-weight: bold;">catch</span> <span style="color: #008000;">&#123;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span></div></td></tr></tbody></table></div>
<p>位置の記録メソッド。<br />
要素に書き込むにはConfigureNode.Valueに代入する必要がある。</p>
<div class="codecolorer-container csharp twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:550px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>40<br />41<br />42<br />43<br /></div></td><td><div class="csharp codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">void</span> SaveLocation<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Configure<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;window&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;location&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;x&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Value</span> <span style="color: #008000;">=</span> Location<span style="color: #008000;">.</span><span style="color: #0000FF;">X</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ToString</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Configure<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;window&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;location&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;y&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Value</span> <span style="color: #008000;">=</span> Location<span style="color: #008000;">.</span><span style="color: #0000FF;">Y</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ToString</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span></div></td></tr></tbody></table></div>
<p>サイズの復元と記録メソッド。<br />
ほぼ同上。</p>
<div class="codecolorer-container csharp twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:550px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br /></div></td><td><div class="csharp codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">void</span> RestoreSize<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">try</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #6666cc; font-weight: bold;">string</span> strw <span style="color: #008000;">=</span> Configure<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;window&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;size&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;width&quot;</span><span style="color: #008000;">&#93;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;strh <span style="color: #008000;">=</span> Configure<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;window&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;size&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;height&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #6666cc; font-weight: bold;">int</span> width <span style="color: #008000;">=</span> Convert<span style="color: #008000;">.</span><span style="color: #0000FF;">ToInt32</span><span style="color: #008000;">&#40;</span>strw, <span style="color: #FF0000;">10</span><span style="color: #008000;">&#41;</span>,<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; height <span style="color: #008000;">=</span> Convert<span style="color: #008000;">.</span><span style="color: #0000FF;">ToInt32</span><span style="color: #008000;">&#40;</span>strh, <span style="color: #FF0000;">10</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Size <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> Size<span style="color: #008000;">&#40;</span>width, height<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span> <span style="color: #0600FF; font-weight: bold;">catch</span> <span style="color: #008000;">&#123;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">void</span> SaveSize<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Configure<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;window&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;size&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;width&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Value</span> <span style="color: #008000;">=</span> Size<span style="color: #008000;">.</span><span style="color: #0000FF;">Width</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ToString</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Configure<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;window&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;size&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;height&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Value</span> <span style="color: #008000;">=</span> Size<span style="color: #008000;">.</span><span style="color: #0000FF;">Height</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ToString</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<span style="color: #008000;">&#125;</span></div></td></tr></tbody></table></div>
<h4>備考</h4>
<p>設定ファイルのディレクトリを明示的に指定しない場合、「～～\ユーザー名\AppData\Roaming\組織名\アプリケーション名\バージョン\」をデフォルトのディレクトリとして扱います。(XP以前では若干違うかも)</p>
]]></content:encoded>
			<wfw:commentRss>http://sikios.com/wordpress/20091127/siki-configure-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Siki.Configure #0</title>
		<link>http://sikios.com/wordpress/20091125/siki-configure-0/</link>
		<comments>http://sikios.com/wordpress/20091125/siki-configure-0/#comments</comments>
		<pubDate>Wed, 25 Nov 2009 14:30:10 +0000</pubDate>
		<dc:creator>rei</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[コンピュータ]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[Siki.Configure]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://sikios.com/wordpress/?p=127</guid>
		<description><![CDATA[今書いてるソースを上げてみる。 連想配列(のようなもの)XML を簡単に行うためのクラスです。詳細はいずれ。 作りかけなので、全く整理してないです。 GlobalConfigure.cs 1234567891011121 ]]></description>
			<content:encoded><![CDATA[<p>今書いてるソースを上げてみる。<br />
連想配列(のようなもの)<->XML を簡単に行うためのクラスです。詳細はいずれ。<br />
作りかけなので、全く整理してないです。<br />
<!---------------------------------------------------------------------------------------------------------------------------------></p>
<h3>GlobalConfigure.cs</h3>
<div class="codecolorer-container csharp twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:550px;height:690px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br />70<br />71<br />72<br />73<br />74<br />75<br />76<br />77<br />78<br />79<br />80<br />81<br />82<br />83<br />84<br />85<br />86<br />87<br />88<br />89<br />90<br />91<br />92<br />93<br />94<br />95<br />96<br />97<br />98<br />99<br />100<br />101<br />102<br />103<br />104<br />105<br />106<br />107<br />108<br />109<br />110<br />111<br />112<br />113<br />114<br />115<br />116<br />117<br />118<br />119<br />120<br />121<br />122<br />123<br />124<br />125<br />126<br />127<br />128<br />129<br />130<br />131<br />132<br />133<br />134<br />135<br />136<br />137<br />138<br />139<br />140<br />141<br />142<br />143<br />144<br />145<br />146<br />147<br />148<br />149<br />150<br />151<br />152<br />153<br />154<br />155<br />156<br />157<br />158<br />159<br />160<br />161<br />162<br />163<br />164<br />165<br />166<br />167<br />168<br />169<br />170<br />171<br />172<br />173<br />174<br />175<br />176<br />177<br />178<br />179<br />180<br />181<br />182<br />183<br />184<br />185<br />186<br />187<br />188<br />189<br />190<br />191<br />192<br />193<br />194<br />195<br />196<br />197<br />198<br />199<br />200<br />201<br />202<br />203<br />204<br />205<br />206<br />207<br />208<br />209<br />210<br />211<br />212<br />213<br />214<br /></div></td><td><div class="csharp codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.Collections.Generic</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.IO</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.Linq</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.Text</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.Windows.Forms</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.Xml</span><span style="color: #008000;">;</span><br />
<br />
<span style="color: #0600FF; font-weight: bold;">namespace</span> Siki<span style="color: #008000;">.</span><span style="color: #0000FF;">Configure</span> <span style="color: #008000;">&#123;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// アプリケーションの設定を管理するクラス</span><br />
&nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">class</span> GlobalConfigure <span style="color: #008000;">&#123;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080;">#region フィールド</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;ファイルのパス&lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">private</span> <span style="color: #6666cc; font-weight: bold;">string</span> m_fullpath <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;現在のアプリケーション設定を表すDOM&lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">private</span> XmlDocument m_dom <span style="color: #008000;">=</span> <span style="color: #0600FF; font-weight: bold;">null</span><span style="color: #008000;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080;">#endregion フィールド</span><br />
<br />
<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080;">#region イベント</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;DOMが初期化されたときに発生するイベント&lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #0600FF; font-weight: bold;">event</span> EventHandler<span style="color: #008000;">&lt;</span>ConfigureEventArgs<span style="color: #008000;">&gt;</span> Initialized<span style="color: #008000;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;ファイルから読み込まれたときに発生するイベント&lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #0600FF; font-weight: bold;">event</span> EventHandler<span style="color: #008000;">&lt;</span>ConfigureEventArgs<span style="color: #008000;">&gt;</span> Loaded<span style="color: #008000;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;ファイルに保存されたときに発生するイベント&lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #0600FF; font-weight: bold;">event</span> EventHandler<span style="color: #008000;">&lt;</span>ConfigureEventArgs<span style="color: #008000;">&gt;</span> Saved<span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080;">#endregion イベント</span><br />
<br />
<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080;">#region プロパティ</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// 設定ファイルのフルパスを取得する.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">string</span> FullPath <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; get <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> m_fullpath<span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">protected</span> set <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; m_fullpath <span style="color: #008000;">=</span> value<span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// XmlDocumentを取得する</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">protected</span> XmlDocument Dom <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; get <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> m_dom<span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> ConfigureNode <span style="color: #0600FF; font-weight: bold;">this</span><span style="color: #008000;">&#91;</span><span style="color: #6666cc; font-weight: bold;">string</span> name<span style="color: #008000;">&#93;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; get <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">foreach</span> <span style="color: #008000;">&#40;</span>XmlNode node <span style="color: #0600FF; font-weight: bold;">in</span> Dom<span style="color: #008000;">.</span><span style="color: #0000FF;">DocumentElement</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ChildNodes</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">if</span> <span style="color: #008000;">&#40;</span>node<span style="color: #008000;">.</span><span style="color: #0000FF;">Name</span> <span style="color: #008000;">==</span> name <span style="color: #008000;">&amp;&amp;</span> node <span style="color: #008000;">is</span> XmlElement<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">// 見つかった場合</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> <span style="color: #008000;">new</span> ConfigureNode<span style="color: #008000;">&#40;</span>node <span style="color: #0600FF; font-weight: bold;">as</span> XmlElement<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">// 見つからなかった場合</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">// 要素を作成</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; XmlElement element <span style="color: #008000;">=</span> Dom<span style="color: #008000;">.</span><span style="color: #0000FF;">CreateElement</span><span style="color: #008000;">&#40;</span>name<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">// 要素を追加</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Dom<span style="color: #008000;">.</span><span style="color: #0000FF;">DocumentElement</span><span style="color: #008000;">.</span><span style="color: #0000FF;">AppendChild</span><span style="color: #008000;">&#40;</span>element<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">// </span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> <span style="color: #008000;">new</span> ConfigureNode<span style="color: #008000;">&#40;</span>element<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080;">#endregion プロパティ</span><br />
<br />
<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080;">#region コンストラクタ</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// デフォルトコンストラクタ.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// 設定ファイルをデフォルトのパスに指定する.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> GlobalConfigure<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">:</span> <span style="color: #0600FF; font-weight: bold;">this</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;conf.xml&quot;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span> <br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080;">#endregion コンストラクタ</span><br />
<br />
<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// コンストラクタ.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// 設定ファイルをデフォルトのフォルダの @a filename に指定する. </span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;param name=&quot;filename&quot;&gt;設定ファイル名&lt;/param&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> GlobalConfigure<span style="color: #008000;">&#40;</span><span style="color: #6666cc; font-weight: bold;">string</span> filename<span style="color: #008000;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">:</span> <span style="color: #0600FF; font-weight: bold;">this</span><span style="color: #008000;">&#40;</span>Application<span style="color: #008000;">.</span><span style="color: #0000FF;">UserAppDataPath</span>, filename<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// コンストラクタ.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// 設定ファイルを @a dir フォルダの @a filename に指定する.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;param name=&quot;dir&quot;&gt;設定ファイルのフォルダ&lt;/param&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;param name=&quot;filename&quot;&gt;設定ファイル名&lt;/param&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> GlobalConfigure<span style="color: #008000;">&#40;</span><span style="color: #6666cc; font-weight: bold;">string</span> dir, <span style="color: #6666cc; font-weight: bold;">string</span> filename<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; FullPath <span style="color: #008000;">=</span> <span style="color: #008000;">&#40;</span>dir<span style="color: #008000;">.</span><span style="color: #0000FF;">EndsWith</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\\</span>&quot;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">?</span> dir <span style="color: #008000;">:</span> dir <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\\</span>&quot;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">+</span> filename<span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; m_dom <span style="color: #008000;">=</span> <span style="color: #008000;">new</span> XmlDocument<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Load<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// 設定ファイルを読み込む.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// ファイルが存在しない場合は新規に作成する.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;returns&gt;XMLの読み込みor作成に成功したか.&lt;/returns&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #0600FF; font-weight: bold;">virtual</span> <span style="color: #6666cc; font-weight: bold;">bool</span> Load<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">try</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">if</span> <span style="color: #008000;">&#40;</span>File<span style="color: #008000;">.</span><span style="color: #0000FF;">Exists</span><span style="color: #008000;">&#40;</span>FullPath<span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">// 設定ファイルが存在するとき</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">// ファイルを読み込む</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Dom<span style="color: #008000;">.</span><span style="color: #0000FF;">Load</span><span style="color: #008000;">&#40;</span>FullPath<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span> <span style="color: #0600FF; font-weight: bold;">else</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">// 設定ファイルが存在しないとき</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Dom<span style="color: #008000;">.</span><span style="color: #0000FF;">AppendChild</span><span style="color: #008000;">&#40;</span>Dom<span style="color: #008000;">.</span><span style="color: #0000FF;">CreateXmlDeclaration</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;1.0&quot;</span>, <span style="color: #666666;">&quot;UTF-8&quot;</span>, <span style="color: #666666;">&quot;yes&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Dom<span style="color: #008000;">.</span><span style="color: #0000FF;">AppendChild</span><span style="color: #008000;">&#40;</span>Dom<span style="color: #008000;">.</span><span style="color: #0000FF;">CreateElement</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;alert&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Save<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span> <span style="color: #0600FF; font-weight: bold;">catch</span> <span style="color: #008000;">&#40;</span>XmlException<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">// XMLに関する例外</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">throw</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span> <span style="color: #0600FF; font-weight: bold;">catch</span> <span style="color: #008000;">&#40;</span>Exception<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">// その他の例外</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> <span style="color: #0600FF; font-weight: bold;">false</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> <span style="color: #0600FF; font-weight: bold;">true</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// Initializedイベントを発行する.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;param name=&quot;e&quot;&gt;&lt;/param&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #0600FF; font-weight: bold;">virtual</span> <span style="color: #6666cc; font-weight: bold;">void</span> OnInitialized<span style="color: #008000;">&#40;</span>ConfigureEventArgs e<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">if</span> <span style="color: #008000;">&#40;</span>Initialized <span style="color: #008000;">!=</span> <span style="color: #0600FF; font-weight: bold;">null</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Initialized<span style="color: #008000;">&#40;</span><span style="color: #0600FF; font-weight: bold;">this</span>, e<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// Loadedイベントを発行する.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;param name=&quot;e&quot;&gt;&lt;/param&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #0600FF; font-weight: bold;">virtual</span> <span style="color: #6666cc; font-weight: bold;">void</span> OnLoaded<span style="color: #008000;">&#40;</span>ConfigureEventArgs e<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">if</span> <span style="color: #008000;">&#40;</span>Loaded <span style="color: #008000;">!=</span> <span style="color: #0600FF; font-weight: bold;">null</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Loaded<span style="color: #008000;">&#40;</span><span style="color: #0600FF; font-weight: bold;">this</span>, e<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// 現在のDOMの状態を設定ファイルに書き込む.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;returns&gt;&lt;/returns&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #0600FF; font-weight: bold;">virtual</span> <span style="color: #6666cc; font-weight: bold;">bool</span> Save<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">try</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Dom<span style="color: #008000;">.</span><span style="color: #0000FF;">Save</span><span style="color: #008000;">&#40;</span>FullPath<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; OnSaved<span style="color: #008000;">&#40;</span><span style="color: #008000;">new</span> ConfigureEventArgs<span style="color: #008000;">&#40;</span>FullPath<span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span> <span style="color: #0600FF; font-weight: bold;">catch</span> <span style="color: #008000;">&#40;</span>XmlException<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">// XMLに関する例外</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">throw</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span> <span style="color: #0600FF; font-weight: bold;">catch</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">// その他の例外</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> <span style="color: #0600FF; font-weight: bold;">false</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> <span style="color: #0600FF; font-weight: bold;">true</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// Savedイベントを発行する.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;param name=&quot;e&quot;&gt;&lt;/param&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #0600FF; font-weight: bold;">virtual</span> <span style="color: #6666cc; font-weight: bold;">void</span> OnSaved<span style="color: #008000;">&#40;</span>ConfigureEventArgs e<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">if</span><span style="color: #008000;">&#40;</span>Saved <span style="color: #008000;">!=</span> <span style="color: #0600FF; font-weight: bold;">null</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Saved<span style="color: #008000;">&#40;</span><span style="color: #0600FF; font-weight: bold;">this</span>, e<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// @a groupname で指定された名前のグループを取得する.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;param name=&quot;groupname&quot;&gt;&lt;/param&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;returns&gt;&lt;/returns&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> ConfigureNode GetGroup<span style="color: #008000;">&#40;</span><span style="color: #6666cc; font-weight: bold;">string</span> groupname<span style="color: #008000;">&#41;</span><span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">foreach</span> <span style="color: #008000;">&#40;</span>XmlNode node <span style="color: #0600FF; font-weight: bold;">in</span> Dom<span style="color: #008000;">.</span><span style="color: #0000FF;">DocumentElement</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ChildNodes</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">if</span> <span style="color: #008000;">&#40;</span>node<span style="color: #008000;">.</span><span style="color: #0000FF;">Name</span> <span style="color: #008000;">==</span> groupname <span style="color: #008000;">&amp;&amp;</span> node <span style="color: #008000;">is</span> XmlElement<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> <span style="color: #008000;">new</span> ConfigureNode<span style="color: #008000;">&#40;</span>node <span style="color: #0600FF; font-weight: bold;">as</span> XmlElement<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; XmlElement element <span style="color: #008000;">=</span> Dom<span style="color: #008000;">.</span><span style="color: #0000FF;">CreateElement</span><span style="color: #008000;">&#40;</span>groupname<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Dom<span style="color: #008000;">.</span><span style="color: #0000FF;">DocumentElement</span><span style="color: #008000;">.</span><span style="color: #0000FF;">AppendChild</span><span style="color: #008000;">&#40;</span>element<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> <span style="color: #008000;">new</span> ConfigureNode<span style="color: #008000;">&#40;</span>element<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<span style="color: #008000;">&#125;</span></div></td></tr></tbody></table></div>
<p><!---------------------------------------------------------------------------------------------------------------------------------></p>
<h3>ConfigureNode.cs</h3>
<div class="codecolorer-container csharp twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:550px;height:690px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br />70<br />71<br />72<br />73<br />74<br />75<br />76<br />77<br />78<br />79<br />80<br />81<br />82<br />83<br />84<br />85<br />86<br />87<br />88<br />89<br />90<br />91<br />92<br />93<br />94<br />95<br />96<br />97<br />98<br />99<br />100<br />101<br />102<br />103<br />104<br />105<br />106<br />107<br />108<br />109<br />110<br />111<br />112<br />113<br />114<br />115<br />116<br />117<br />118<br /></div></td><td><div class="csharp codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.Collections.Generic</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.Linq</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.Text</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.Xml</span><span style="color: #008000;">;</span><br />
<br />
<span style="color: #0600FF; font-weight: bold;">namespace</span> Siki<span style="color: #008000;">.</span><span style="color: #0000FF;">Configure</span> <span style="color: #008000;">&#123;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// 設定ノード.</span><br />
&nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">class</span> ConfigureNode <span style="color: #008000;">&#123;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// 対応するXmlElementを取得する.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> XmlElement Element <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; get<span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">private</span> set<span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// 最初のXmlTextを取得する.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">private</span> XmlText Text <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; get <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">foreach</span> <span style="color: #008000;">&#40;</span>XmlNode node <span style="color: #0600FF; font-weight: bold;">in</span> Element<span style="color: #008000;">.</span><span style="color: #0000FF;">ChildNodes</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">if</span> <span style="color: #008000;">&#40;</span>node <span style="color: #008000;">is</span> XmlText<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> node <span style="color: #0600FF; font-weight: bold;">as</span> XmlText<span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> <span style="color: #0600FF; font-weight: bold;">null</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// 子ノードを名前で取得するインデクサ.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;param name=&quot;name&quot;&gt;&lt;/param&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;returns&gt;&lt;/returns&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> ConfigureNode <span style="color: #0600FF; font-weight: bold;">this</span><span style="color: #008000;">&#91;</span><span style="color: #6666cc; font-weight: bold;">string</span> name<span style="color: #008000;">&#93;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; get <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">foreach</span> <span style="color: #008000;">&#40;</span>XmlNode node <span style="color: #0600FF; font-weight: bold;">in</span> Element<span style="color: #008000;">.</span><span style="color: #0000FF;">ChildNodes</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">if</span><span style="color: #008000;">&#40;</span>node<span style="color: #008000;">.</span><span style="color: #0000FF;">Name</span> <span style="color: #008000;">==</span> name <span style="color: #008000;">&amp;&amp;</span> node <span style="color: #008000;">is</span> XmlElement<span style="color: #008000;">&#41;</span><span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">// 見つかった場合</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> <span style="color: #008000;">new</span> ConfigureNode<span style="color: #008000;">&#40;</span>node <span style="color: #0600FF; font-weight: bold;">as</span> XmlElement<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">// 見つからなかった場合</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; XmlDocument xmldoc <span style="color: #008000;">=</span> Element<span style="color: #008000;">.</span><span style="color: #0000FF;">OwnerDocument</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">// 要素を作成</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; XmlElement element <span style="color: #008000;">=</span> xmldoc<span style="color: #008000;">.</span><span style="color: #0000FF;">CreateElement</span><span style="color: #008000;">&#40;</span>name<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">// 要素を追加</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Element<span style="color: #008000;">.</span><span style="color: #0000FF;">AppendChild</span><span style="color: #008000;">&#40;</span>element<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">// </span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> <span style="color: #008000;">new</span> ConfigureNode<span style="color: #008000;">&#40;</span>element<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// このノードの名前を取得する.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">string</span> Name <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; get <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> Element<span style="color: #008000;">.</span><span style="color: #0000FF;">Name</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// このノードの値を取得、設定する</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">string</span> Value <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; get <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; XmlText text <span style="color: #008000;">=</span> Text<span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> text <span style="color: #008000;">!=</span> <span style="color: #0600FF; font-weight: bold;">null</span> <span style="color: #008000;">?</span> text<span style="color: #008000;">.</span><span style="color: #0000FF;">Value</span> <span style="color: #008000;">:</span> <span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; set <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; XmlDocument doc <span style="color: #008000;">=</span> Element<span style="color: #008000;">.</span><span style="color: #0000FF;">OwnerDocument</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; XmlText text <span style="color: #008000;">=</span> Text<span style="color: #008000;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">if</span> <span style="color: #008000;">&#40;</span>text <span style="color: #008000;">!=</span> <span style="color: #0600FF; font-weight: bold;">null</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; text<span style="color: #008000;">.</span><span style="color: #0000FF;">Value</span> <span style="color: #008000;">=</span> value<span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span> <span style="color: #0600FF; font-weight: bold;">else</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; text <span style="color: #008000;">=</span> doc<span style="color: #008000;">.</span><span style="color: #0000FF;">CreateTextNode</span><span style="color: #008000;">&#40;</span>value<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Element<span style="color: #008000;">.</span><span style="color: #0000FF;">AppendChild</span><span style="color: #008000;">&#40;</span>text<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// コンストラクタ.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;param name=&quot;element&quot;&gt;対応するXmlElement&lt;/param&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> ConfigureNode<span style="color: #008000;">&#40;</span>XmlElement element<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Element <span style="color: #008000;">=</span> element<span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// ノードの値を取得する.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;param name=&quot;node&quot;&gt;&lt;/param&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;returns&gt;&lt;/returns&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #0600FF; font-weight: bold;">static</span> <span style="color: #0600FF; font-weight: bold;">implicit</span> <span style="color: #0600FF; font-weight: bold;">operator</span> <span style="color: #6666cc; font-weight: bold;">string</span><span style="color: #008000;">&#40;</span>ConfigureNode node<span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> node<span style="color: #008000;">.</span><span style="color: #0000FF;">Element</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Value</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// このノードが値を持っているか調べる.</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;returns&gt;値を持っていれば真.&lt;/returns&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">bool</span> HasValue<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> Text <span style="color: #008000;">!=</span> <span style="color: #0600FF; font-weight: bold;">null</span><span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<span style="color: #008000;">&#125;</span></div></td></tr></tbody></table></div>
<p><!---------------------------------------------------------------------------------------------------------------------------------></p>
<h3>ConfigureEventArgs.cs</h3>
<div class="codecolorer-container csharp twitlight" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:550px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br /></div></td><td><div class="csharp codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.Collections.Generic</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.Linq</span><span style="color: #008000;">;</span><br />
<span style="color: #0600FF; font-weight: bold;">using</span> <span style="color: #008080;">System.Text</span><span style="color: #008000;">;</span><br />
<br />
<span style="color: #0600FF; font-weight: bold;">namespace</span> Siki<span style="color: #008000;">.</span><span style="color: #0000FF;">Configure</span> <span style="color: #008000;">&#123;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;summary&gt;</span><br />
&nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// </span><br />
&nbsp; &nbsp; <span style="color: #008080; font-style: italic;">/// &lt;/summary&gt;</span><br />
&nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">class</span> ConfigureEventArgs <span style="color: #008000;">:</span> EventArgs<span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">private</span> <span style="color: #6666cc; font-weight: bold;">string</span> m_path<span style="color: #008000;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">string</span> Path <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; get <span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">return</span> m_path<span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #0600FF; font-weight: bold;">public</span> ConfigureEventArgs<span style="color: #008000;">&#40;</span><span style="color: #6666cc; font-weight: bold;">string</span> path<span style="color: #008000;">&#41;</span><span style="color: #008000;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; m_path <span style="color: #008000;">=</span> path<span style="color: #008000;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
&nbsp; &nbsp; <span style="color: #008000;">&#125;</span><br />
<span style="color: #008000;">&#125;</span></div></td></tr></tbody></table></div>
]]></content:encoded>
			<wfw:commentRss>http://sikios.com/wordpress/20091125/siki-configure-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio 2010 Beta2</title>
		<link>http://sikios.com/wordpress/20091123/visual-studio-2010-beta2/</link>
		<comments>http://sikios.com/wordpress/20091123/visual-studio-2010-beta2/#comments</comments>
		<pubDate>Sun, 22 Nov 2009 15:07:20 +0000</pubDate>
		<dc:creator>rei</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[コンピュータ]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[.Net]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://sikios.com/wordpress/?p=109</guid>
		<description><![CDATA[試しに入れてみました。 いろいろ試そうと思ったんですが、あまりにもっさりとしていたので諦めました。 マシンのスペックが足りないようです。 なのでスクリーンショットだけ。普段の配置です。 2008と同時に起動して同じソリュ ]]></description>
			<content:encoded><![CDATA[<p>試しに入れてみました。<br />
いろいろ試そうと思ったんですが、あまりにもっさりとしていたので諦めました。<br />
マシンのスペックが足りないようです。<br />
なのでスクリーンショットだけ。普段の配置です。<br />
<a href="http://sikios.com/wordpress/wp-content/uploads/2009/11/091122desktop.png"><img src="http://sikios.com/wordpress/wp-content/uploads/2009/11/091122desktop_thumb.png" alt="091122desktop_thumb" title="091122desktop_thumb" width="450" height="210" class="alignnone size-full wp-image-112" /></a></p>
<p>2008と同時に起動して同じソリューションを読み込んだときの使用メモリ量。2倍以上使用してます。<br />
<a href="http://sikios.com/wordpress/wp-content/uploads/2009/11/091122vsres.png"><img src="http://sikios.com/wordpress/wp-content/uploads/2009/11/091122vsres-300x249.png" alt="091122vsres" title="091122vsres" width="300" height="249" class="alignnone size-medium wp-image-114" /></a></p>
<p>2010年3月22日発売予定だそうです。正直あまり期待できないなぁ。</p>
]]></content:encoded>
			<wfw:commentRss>http://sikios.com/wordpress/20091123/visual-studio-2010-beta2/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Graphvizを使ってみる</title>
		<link>http://sikios.com/wordpress/20091117/graphviz%e3%82%92%e4%bd%bf%e3%81%a3%e3%81%a6%e3%81%bf%e3%82%8b/</link>
		<comments>http://sikios.com/wordpress/20091117/graphviz%e3%82%92%e4%bd%bf%e3%81%a3%e3%81%a6%e3%81%bf%e3%82%8b/#comments</comments>
		<pubDate>Mon, 16 Nov 2009 21:27:50 +0000</pubDate>
		<dc:creator>rei</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[コンピュータ]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[Doxygen]]></category>
		<category><![CDATA[Graphviz]]></category>

		<guid isPermaLink="false">http://sikios.com/wordpress/?p=77</guid>
		<description><![CDATA[http://www.graphviz.org/ 1.ダウンロード＆インストール http://www.graphviz.org/から。 「C:\Program Files (x86)\doxygen」にインストールした ]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.graphviz.org/">http://www.graphviz.org/</a></p>
<p>1.ダウンロード＆インストール<br />
<a href="http://www.graphviz.org/">http://www.graphviz.org/</a>から。<br />
「C:\Program Files (x86)\doxygen」にインストールしたみた。</p>
<p>2.Doxygenの設定<br />
doxywizardを使う場合はExpertタブ内でDotに関する項目を変更するだけです。<br />
最低限「HAVE_DOT」にチェックを入れ、「DOT_PATH」にdot.exeの存在するディレクトリを指定すれば動作します。</p>
<p>3.備考<br />
Doxygen単体での使用と違いgraphvizは画像を生成するので多少時間がかかります。<br />
GRAPHICAL_HIERARCHYのチェックが入っていなければ2回目以降は早くなると思います。</p>
]]></content:encoded>
			<wfw:commentRss>http://sikios.com/wordpress/20091117/graphviz%e3%82%92%e4%bd%bf%e3%81%a3%e3%81%a6%e3%81%bf%e3%82%8b/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>C# × Doxygen [2]</title>
		<link>http://sikios.com/wordpress/20091115/csharp_x_doxygen_/</link>
		<comments>http://sikios.com/wordpress/20091115/csharp_x_doxygen_/#comments</comments>
		<pubDate>Sun, 15 Nov 2009 12:00:20 +0000</pubDate>
		<dc:creator>rei</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[コンピュータ]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[Doxygen]]></category>

		<guid isPermaLink="false">http://sikios.com/wordpress/?p=64</guid>
		<description><![CDATA[C#では標準のXMLドキュメントを書いておけばDoxygenの方でうまく認識してくれるようです。VC#のエディタならクラスやメソッドの前で「///」と打てばテンプレートを作ってくれるので殆ど覚えることはないです。 Mic ]]></description>
			<content:encoded><![CDATA[<p>C#では標準のXMLドキュメントを書いておけばDoxygenの方でうまく認識してくれるようです。VC#のエディタならクラスやメソッドの前で「///」と打てばテンプレートを作ってくれるので殆ど覚えることはないです。<br />
<a href="http://msdn.microsoft.com/ja-jp/library/5ast78ax.aspx">Microsoftの推奨タグ</a></p>
]]></content:encoded>
			<wfw:commentRss>http://sikios.com/wordpress/20091115/csharp_x_doxygen_/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

