<?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>Splitbits</title>
	<atom:link href="http://www.splitbits.com/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.splitbits.com</link>
	<description></description>
	<lastBuildDate>Mon, 27 Jul 2009 23:40:49 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>.NET, OleDB and Excel</title>
		<link>http://www.splitbits.com/?p=59</link>
		<comments>http://www.splitbits.com/?p=59#comments</comments>
		<pubDate>Mon, 20 Jul 2009 23:19:11 +0000</pubDate>
		<dc:creator>Julian</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[.NET]]></category>

		<guid isPermaLink="false">http://www.splitbits.com/?p=59</guid>
		<description><![CDATA[OleDB is a very useful API in .NET, especially when programmatically manipulating the data in an Excel spreadsheet. In fact, it can open an Excel spreadsheet and query the data using regular SQL statements.
using System.Data.OleDb;
OleDbConnection conn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=somedataineed.xls;Extended Properties=\"Excel 12.0 Xml;HDR=NO\";");

The connection string is fairly standard. However, notice the &#8216;HDR=No&#8217; under extended properties, [...]]]></description>
			<content:encoded><![CDATA[<p>OleDB is a very useful API in .NET, especially when programmatically manipulating the data in an Excel spreadsheet. In fact, it can open an Excel spreadsheet and query the data using regular SQL statements.</p>
<pre class="code"><code>using System.Data.OleDb;
OleDbConnection conn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=somedataineed.xls;Extended Properties=\"Excel 12.0 Xml;HDR=NO\";");
</code></pre>
<p>The connection string is fairly standard. However, notice the &#8216;HDR=No&#8217; under extended properties, this tells the connection to assume that the first row does not contain header text. By default, or if &#8216;HDR=Yes&#8217;, the first row will be disregarded as headers and the first row of data may be skipped, be CAREFUL.<br />
<span id="more-59"></span><br />
Once the connection is open the spreadsheet can be queried like any SQL database,</p>
<pre class="code"><code>OleDbCommand comm = conn.CreateCommand();
comm.CommandText = "SELECT * FROM Sheet1";
OleDbDataReader read = comm.ExecuteReader();

while (read.Read())
{
   // Do something here, manipulate the data, get a coffeee, something!
}

read.Close();
conn.Close();
</code></pre>
<p>Of course, if the spreadsheet has no headers (in the first row) then you have to reference the fields by ordinal, otherwise you can reference the column names. Thats it, the spreadsheet and its data are now at you mercy!</p>
<p>Keen observers will have noticed that the default Excel sheet name  (&#8221;&#8216;Sheet1&#8243;) was used as the table name in the query. What happens if you don&#8217;t know the name of the sheet? (or worse some pesky user didn&#8217;t like the sheet name and saw fit to change it, how dare they?)</p>
<p>If this happens (and it probably will), take a peek at the workbook layout (&#8221;database schema&#8221;) and find out the sheet names (&#8221;table names&#8221;). This is useful in a number of instances, for example, importing the data into another application without forcing the user to perform a text export from Excel.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.splitbits.com/?feed=rss2&amp;p=59</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WifFi 1.2b (Part Two)</title>
		<link>http://www.splitbits.com/?p=65</link>
		<comments>http://www.splitbits.com/?p=65#comments</comments>
		<pubDate>Tue, 31 Oct 2006 02:09:01 +0000</pubDate>
		<dc:creator>Julian</dc:creator>
				<category><![CDATA[Applications]]></category>

		<guid isPermaLink="false">http://www.splitbits.com/?p=65</guid>
		<description><![CDATA[WifFi 1.2b (second edition) is ready!
Get it here.
This release includes an optional WifFi-VEN-DB.pdb (621KB). If you choose to install it, WifFi will attempt to &#8220;guess&#8221; the hardware behind each detected AP. To access this information click the SSID header twice, it will flip from SSID to MAC to VENDOR.
NOTE: This will only work for AP&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>WifFi 1.2b (second edition) is ready!</p>
<p>Get it <a href="http://www.splitbits.com/?page_id=15">here</a>.</p>
<p>This release includes an optional WifFi-VEN-DB.pdb (621KB). If you choose to install it, WifFi will attempt to &#8220;guess&#8221; the hardware behind each detected AP. To access this information click the SSID header twice, it will flip from SSID to MAC to VENDOR.</p>
<p>NOTE: This will only work for AP&#8217;s found (or refound) after the Vendor DB is installed.</p>
<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.splitbits.com/?feed=rss2&amp;p=65</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Move Complete</title>
		<link>http://www.splitbits.com/?p=57</link>
		<comments>http://www.splitbits.com/?p=57#comments</comments>
		<pubDate>Sat, 09 Sep 2006 01:35:51 +0000</pubDate>
		<dc:creator>Julian</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.splitbits.com/?p=57</guid>
		<description><![CDATA[Splitbits is now running on a new web host and new software!
All content should now be available under the new site, let me know if something is missing otherwise enjoy.
In addition, a new version of WifFi will be available soon, with many new features and bug fixes including support for the Palm T&#124;X.
]]></description>
			<content:encoded><![CDATA[<p>Splitbits is now running on a new <a target="_blank" href="http://www.godaddy.com">web host</a> and <a target="_blank" href="http://www.wordpress.net">new software</a>!</p>
<p>All content should now be available under the new site, <a href="mailto:julian@splitbits.com">let me know</a> if something is missing otherwise enjoy.</p>
<p>In addition, a new version of <a href="/index.php?page_id=4">WifFi</a> will be available soon, with many new features and bug fixes including support for the Palm T|X.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.splitbits.com/?feed=rss2&amp;p=57</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Patience please&#8230;</title>
		<link>http://www.splitbits.com/?p=30</link>
		<comments>http://www.splitbits.com/?p=30#comments</comments>
		<pubDate>Sun, 27 Aug 2006 22:09:50 +0000</pubDate>
		<dc:creator>Julian</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.splitbits.com/?p=30</guid>
		<description><![CDATA[Splitbits is moving, to a different server and a different software platform.
Unfortunately, this move will break most existing links and render some content inaccessible for several days (until I get around to transferring it). If you absolutely need something that used to be here, send an email.
However, if your looking for WifFi, There is GOOD [...]]]></description>
			<content:encoded><![CDATA[<p>Splitbits is moving, to a different server and a <a target="_blank" href="http://www.wordpress.net">different software platform</a>.</p>
<p>Unfortunately, this move will break most existing links and render some content inaccessible for several days (until I get around to transferring it). If you absolutely need something that used to be here, <a href="mailto:julian@splitbits.com">send an email</a>.</p>
<p>However, if your looking for WifFi, There is <a href="http://www.splitbits.com/index.php?page_id=4">GOOD NEWS!</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.splitbits.com/?feed=rss2&amp;p=30</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
