千葉真子の推薦のウォーキングマシン(ルームマーチウォーク)を購入しました。冬になると雪が降って外に散歩にでるのがおっくうになるので、このマシンで室内で運動することができます。なお、約30分間、動作すると自動的に止まります。
また保証期間は半年
間です。
http://www.youtube.com/watch?v=hkEKutLEYLc
なお、以下の商品は、値段が上のものよりは安いのですが、同じものなのか違うものなのかよくわからないです。
2012年12月30日日曜日
2012年12月29日土曜日
C# でExcelからチャートを作成
C# でExcelファイルからチャートを作成するサンプルです。
予め、chart1 という名前のチャートコントロールをフォームに配置しておきます。\temp.xls というExcelファイルのシート名6954の領域B1~D250に表が作成されている状態で実行します。(1行目の領域B1~D1には、hiduke,svalue,hvalue などのフィールド名が記述されています。実際の数値は領域B2~D250に記述されています。)
2012年12月27日木曜日
2.0TB のハードディスク(HDD)を購入
2.0TB のハードディスク(HDD)をアマゾンで購入しました。またこのHDDは、SATAですが、SATA → IDE変換アダプタ(コネクタ)(変換名人)を合わせて購入しました。パソコンが古いので、SATAではなくてIDEのケーブルがついており、これに接続するためです。接続して問題なくハードディスクが認識できたので安心しました。ただし変換名人のIDE側のコネクタのほうがきつくて、いったん差し込むとなかなか抜けません。
WD Green 3.5inch IntelliPower 2.0TB 64MBキャッシュ SATA3.0 WD20EZRX/N
http://www.amazon.co.jp/gp/product/B009QWUF6M/ref=oh_details_o01_s00_i00
TFTEC JAPAN SATA → IDE変換アダプタ(コネクタ) IDE-SATAZD2(変換名人)
http://www.amazon.co.jp/gp/product/B004R9KPMI/ref=oh_details_o01_s00_i01
WD Green 3.5inch IntelliPower 2.0TB 64MBキャッシュ SATA3.0 WD20EZRX/N
http://www.amazon.co.jp/gp/product/B009QWUF6M/ref=oh_details_o01_s00_i00
TFTEC JAPAN SATA → IDE変換アダプタ(コネクタ) IDE-SATAZD2(変換名人)
http://www.amazon.co.jp/gp/product/B004R9KPMI/ref=oh_details_o01_s00_i01
2012年12月26日水曜日
iPod用のイヤホンを買った
iPod用に使っていたイヤホンが壊れた(右側が聞こえなくなった)ので、新しいものをアマゾンで発注しました。1,000円ぐらいするかと思っていたのですが、安いのがあったので、思わずポチってしまいました。(242円でした。)カスタマープレビューでは「安いのに高音質」という評価だったので、どんなものが届くか楽しみでした。100円ショップで買えるものよりはよいものであればぐらいに思って少し期待していました。実際に届いてみると雑音が少なく音は確かにきれいだと思いました。あとはどれだけ長持ちするかだと思います。
発注した242円のもの
PLANEX iPhone4s/iPod/スマートフォン対応 ステレオイヤホン PL-EP01
http://www.amazon.co.jp/dp/B0052BPKL6/ref=pe_302852_34649732_3p_dp_1
参考まで
Apple iPodイヤフォン(2006) MA662G/B
http://www.amazon.co.jp/%E3%82%A2%E3%83%83%E3%83%97%E3%83%AB-MA662G-B-Apple-iPod%E3%82%A4%E3%83%A4%E3%83%95%E3%82%A9%E3%83%B3/dp/B000IK250U/ref=cm_cr_pr_product_top
2012年12月25日火曜日
Perl でAccessデータベースに接続するサンプル(その2)
Perl でAccessデータベースに接続するサンプル(その2)
以下のサンプルでは、C:\mdb\book.mdb というAccessデータベースに接続して,book というテーブルの中の title と isbn というフィールドの値を表示しています。ADODB.Connection をnew するところと、クエリーを実行するところでエラー発生時にメッセージを表示できるように、' or die ~'の句が挿入されています。
-------------------------------------
use strict;
use Win32::OLE;
use utf8;
my $conn = "Provider=Microsoft.Jet.OLEDB.4.0;";
$conn .= "Data Source=c:\\mdb\\book.mdb;";
my $db = Win32::OLE->new("ADODB.Connection") or die "CreateObject: $!";
$db->Open($conn);
my $query = "select * from book;";
my $result = $db->Execute($query) or die join ' ', map { $db->Errors->Item($_)->Description } (0 .. $db->Errors->Count - 1);
while (!$result->EOF) {
print $result->Fields('title')->Value . " " . $result->Fields('isbn')->Value . "\n";
$result->MoveNext;
}
$result->Close();
$db->Close();
------------------------------------
以下のサンプルでは、C:\mdb\book.mdb というAccessデータベースに接続して,book というテーブルの中の title と isbn というフィールドの値を表示しています。ADODB.Connection をnew するところと、クエリーを実行するところでエラー発生時にメッセージを表示できるように、' or die ~'の句が挿入されています。
-------------------------------------
use strict;
use Win32::OLE;
use utf8;
my $conn = "Provider=Microsoft.Jet.OLEDB.4.0;";
$conn .= "Data Source=c:\\mdb\\book.mdb;";
my $db = Win32::OLE->new("ADODB.Connection") or die "CreateObject: $!";
$db->Open($conn);
my $query = "select * from book;";
my $result = $db->Execute($query) or die join ' ', map { $db->Errors->Item($_)->Description } (0 .. $db->Errors->Count - 1);
while (!$result->EOF) {
print $result->Fields('title')->Value . " " . $result->Fields('isbn')->Value . "\n";
$result->MoveNext;
}
$result->Close();
$db->Close();
------------------------------------
2012年12月24日月曜日
Accessのパスワードを忘れてしまった
数年前に作成したAccessのデータベースにパスワードをかけていたのですが、そのパスワードを忘れてしまい開けなくなっていました。以下のサイトを参考にさせて頂き、忘れていたパスワードを調べることができました。
http://pucyan.blog77.fc2.com/blog-entry-46.html
http://www.everythingaccess.com/downloads.asp
使用したのは、Access Password Retrieval Lite (FREEWARE) というツールです。このツールではAccess95/97/2000/2002(XP)/2003 をサポートしています。
http://pucyan.blog77.fc2.com/blog-entry-46.html
http://www.everythingaccess.com/downloads.asp
使用したのは、Access Password Retrieval Lite (FREEWARE) というツールです。このツールではAccess95/97/2000/2002(XP)/2003 をサポートしています。
Perl で Accessデータベースに接続
Perl スクリプトで Access データベース(mdb)に接続して、テーブルの内容を表示するサンプルです。access2007 のデータベースで試しました(どうもaccess97のmdbデータだとうまく動作しないようです。)
以下のサイトを参考にさせて頂きました。
http://www.tryhp.net/OLE.htm
以下のサイトを参考にさせて頂きました。
http://www.tryhp.net/OLE.htm
2012年12月20日木曜日
C# でCSV形式のテキストファイルを読み込む
C# でCSV形式のテキストファイルを読み込むサンプル(テキストファイルはc:\mdb\zzz.txt)参照の追加でMicrosoft VisualBasic を追加しておく必要があります。
C#で 2か月前の日付の文字列を得る
C#で今日の日付と2か月前の日付の文字列を得るサンプル
string kyounohiduke = DateTime.Today.ToString("yyyy/MM/dd");
string nikagetsumae = DateTime.Today.AddMonths(-2).ToString("yyyy/MM/dd");
string kyounohiduke = DateTime.Today.ToString("yyyy/MM/dd");
string nikagetsumae = DateTime.Today.AddMonths(-2).ToString("yyyy/MM/dd");
C# でAccessデータベースをチャート化
C# でAccessデータベースの内容を取り出してチャートを表示するサンプルです。
予めAccessのmdbに、株価のデータを格納しておきます。(データベース名は、c:\mdb\stock_mdb.mdbです。テーブル名は、stock_mdb です。フィールド名は、meigara,hiduke,evalue,hvalue などです。)
また予めフォームにチャートコントロールを張り付けておきます。引数として、code と miniYを与えます。
code は銘柄コードでテーブルのmeigara に相当します。miniYはチャートの表示の下限を表します。
2012年12月19日水曜日
C# で Excel のセルを読み書き
C# (Visual Studio 2012 express)で Excel ファイルのA1セルを読み書きする処理
参考にさせてもらったサイト
http://code.msdn.microsoft.com/office/C-Excel-Sheet-5037d251
2012年12月16日日曜日
C# でAccessデータベースに接続(コンソールプログラム)
C# でAccessデータベースに接続してテーブルのフィールドを表示するサンプルプログラム
以下のサイトを参考にさせて頂きました。
http://www.dscripts.net/2009/01/20/connect-to-microsoft-access-mdb-database-using-csharp/
以下のサンプルではc:\mdb\stock_mdb.mdb というAccessデータベースに接続してmeigara というテーブルのフィールドを表示しています。
以下のサイトを参考にさせて頂きました。
http://www.dscripts.net/2009/01/20/connect-to-microsoft-access-mdb-database-using-csharp/
以下のサンプルではc:\mdb\stock_mdb.mdb というAccessデータベースに接続してmeigara というテーブルのフィールドを表示しています。
2012年12月15日土曜日
C# で Accessのmdb に接続
C# で Accessのmdb に接続してテーブルの中のフィールドの値を表示するサンプル。
以下のサイトを参照させて頂きました。
http://sunaolabo.blog32.fc2.com/blog-entry-38.html
C# でExcelファイルに書き込む
C# でExcelファイルに書き込むサンプルです。
参考にさせて頂いたサイト
http://www.ipentec.com/document/document.aspx?page=csharp-save-excel-new-file-and-write&culture=ja-jp
読み込むサンプルは以下です。
http://chaos-fractal.blogspot.jp/2012/12/c-excel.html
C# でExcelファイルにアクセス
C# でExcelファイルにアクセスするサンプル
なお予めExcelのCOMコンポーネントへの参照をプロジェクトに追加する必要があります。これには[参照の追加]ウィンドウで[COM]タブを選択し、「Microsoft Excel 15.0 Object Library」(Excel 2013の場合。Excel 2007の場合は「Microsoft Excel 12.0 Object Library」を選択します)。
以下を参考にさせていただきました。 http://www.atmarkit.co.jp/fdotnet/dotnettips/717excelfile/excelfile.html
2012年12月13日木曜日
2012年12月12日水曜日
Visual Studio 2012 Express for Windows Desktop
マイクロソフトのサイトでVisual Studio 2012 Express for Windows Desktop 日本語 をダウンロードしました。
http://www.microsoft.com/visualstudio/jpn/downloads#d-express-windows-desktop
ダウンロードが終了すると、VS2012_WDX_JPN.isoというファイルができているのでこれをダブルクリックしてドライブにマウントします。(Windows8からは、isoファイルをダブルクリックすると自動的にドライブにマウントされるようになりました。)
できたドライブの中にwdexpress_full.exeというファイルがあるので、これをダブルクリック。次の画面で「ライセンス条項に同意する」のチェックをいれて「インストール」をクリックするとインストールが始まりました。
その後アップデートをインストールしてVisualStudioが使用できるようになりました。
2012年12月11日火曜日
Perl でyahooのページから株価を取得する
perl でyahooのページから株価を取得するサンプル(以下のサンプルでは、東京電力の株価を取得して表示)
以前にもWeb::Scraperを使った似たような内容の投稿を書いています。
http://chaos-fractal.blogspot.jp/2011/12/perl.html
http://chaos-fractal.blogspot.jp/2011/12/perl.html
Windows8のために
Windows8を購入する前にメモリを増設しハードディスクも新しく買ってWindows8 Enterprise90日間評価版をインストールしてみました。
http://technet.microsoft.com/ja-JP/evalcenter/hh699156.aspx …
それに、DSP版Windows7 Home Premiumも購入しました。(アマゾンで9,750円)
Windows8Proを1,200円で購入したのは事実ですがそれ以前にWindows8のためにそれなりに投資したのだなと自分でも思います。
http://technet.microsoft.com/ja-JP/evalcenter/hh699156.aspx …
それに、DSP版Windows7 Home Premiumも購入しました。(アマゾンで9,750円)
Windows8Proを1,200円で購入したのは事実ですがそれ以前にWindows8のためにそれなりに投資したのだなと自分でも思います。
2012年12月8日土曜日
Office Professional 2013 プレビュー
Office Professional 2013 プレビューをインストールしました。インストール元は以下のサイトです。
http://www.microsoft.com/ja-jp/office/preview/office2013.aspx
なお、LibreOfficeのWriterで、文章を作成して、Office2013のWordで開いたところ、最後の行が表示されないことがありました。最後の行の後ろに改行をいくつかいれると表示されるようになりました。
USBメモリ8GBを買う
昨日 imation 社(台湾)のUSB Flash Drive(USBメモリ)8GBを購入しました。360°回転式キャップがついているのが特徴です。
imation NANO-f 8GB NATURAL ORANGE
ジョーシンで税込780円でした。
imation NANO-f 8GB NATURAL ORANGE
ジョーシンで税込780円でした。
Unetbootin をダウンロード
ダウンロードしたisoファイルをUSBメモリに書き込んで、USBメモリからブート出来るようにするためのツールとしてUnetbootinをダウンロードしました。
ダウンロード元はこちら
http://unetbootin.sourceforge.net/
日本語の説明はこちら
http://myusuke-plus.jp/archives/1162
ダウンロード元はこちら
http://unetbootin.sourceforge.net/
日本語の説明はこちら
http://myusuke-plus.jp/archives/1162
2012年12月6日木曜日
Windows8を使った感想
Windows8はやっぱりデスクトップにスタートボタンがないので慣れるまでは使いにくいですね。始めは電源を落とすのはどうしたらよいの?コントロールパネルを出すには?コマンドプロンプトはどうやって?という感じでした。
マウスを画面の右上か右下に持っていくとメニューが右から出てくるのでそこから始まりです。「設定」を選ぶと電源を落としたりコントロールパネルに移動したりできます。
Windows8は使いにくいのですが、前にそのPCで使っていたWindowsVistaに比べれば早くなったなあという感じです。いったんデスクトップに入れば以前のWindowsに近い感じで使えます。
画面の左下で右クリックするとコマンドプロンプトなどが使用できるメニューがでてきます。
今いる画面を閉じて元の画面に戻るには、Alt+F4キーを使うと便利です。
Windows8に慣れるために、ハードディスクを新規に購入してWindows8Enterprise90日間評価版というのをインストールして使用しました。
参考URL
Windows 8はマウス・キーボードでも操作できるの?
http://extras.jp.msn.com/windows8/win8gimon/article.aspx?cp-documentid=251088647
Windows8 のショートカットキー4つ
http://d.hatena.ne.jp/Shingi/20121025/1351174736
2012年12月1日土曜日
Ubuntu 12.10 で wine
Windows上で動作するプログラムを、Ubuntuでも動作させることのできる wine というプログラムを使用しています。
はじめは コマンドラインから wine と入力すると以下のように入力するように求められますのでそのとおりに入力するとwine プログラムは使用できるようになりました。
sudo apt-get install wine1.4-i386
私の場合には、SecMail.exe というWindowsプログラムを使用するのでそのプログラムをホームディレクトリに配置した上で以下のように入力して起動します。
wine SecMail.exe
また、このSecMail.exeというファイルに実行権をつけると、wine と入力しなくてもそのまま起動できるようになります。
chmod a+x SecMail.exe (実行権をつける)
./SecMail.exe (このコマンドだけで起動できるようになる)
はじめは コマンドラインから wine と入力すると以下のように入力するように求められますのでそのとおりに入力するとwine プログラムは使用できるようになりました。
sudo apt-get install wine1.4-i386
私の場合には、SecMail.exe というWindowsプログラムを使用するのでそのプログラムをホームディレクトリに配置した上で以下のように入力して起動します。
wine SecMail.exe
また、このSecMail.exeというファイルに実行権をつけると、wine と入力しなくてもそのまま起動できるようになります。
chmod a+x SecMail.exe (実行権をつける)
./SecMail.exe (このコマンドだけで起動できるようになる)
英会話学習用Podcast
英会話の学習用Podcast としてよく聞いているのは以下の二つ
Gaba G Style English~シチュエーション別英会話~
By Gaba
Gaba G Style English~シチュエーション別英会話~
By Gaba
https://itunes.apple.com/us/podcast/id168407898
ECC 英会話 Podcasting 知ってる単語でこんなに話せる!
By ECC
By ECC
https://itunes.apple.com/podcast/ecc-ying-hui-hua-podcasting/id124528617?mt=2
2012年11月30日金曜日
Ubuntu12.10 にDropbox をインストール
Ubuntu12.10 にDropbox をインストールするには
以下のサイトへ行って、指示とおりにする。
https://www.dropbox.com/install?os=lnx
1.以下のように入力(32-bitの場合:)
2.すると以下のような画面表示となる。
$ cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86" | tar xzf -
--2012-11-30 18:34:36-- https://www.dropbox.com/download?plat=lnx.x86
www.dropbox.com (www.dropbox.com) をDNSに問いあわせています... 199.47.216.171, 199.47.217.170, 199.47.217.171, ...
www.dropbox.com (www.dropbox.com)|199.47.216.171|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 302 FOUND
場所: https://dl-web.dropbox.com/u/17/dropbox-lnx.x86-1.6.2.tar.gz [続く]
--2012-11-30 18:34:37-- https://dl-web.dropbox.com/u/17/dropbox-lnx.x86-1.6.2.tar.gz
dl-web.dropbox.com (dl-web.dropbox.com) をDNSに問いあわせています... 184.73.223.62, 23.23.136.122, 174.129.27.95, ...
dl-web.dropbox.com (dl-web.dropbox.com)|184.73.223.62|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 18847990 (18M) [application/x-tar]
`STDOUT' に保存中
100%[======================================>] 18,847,990 574K/s 時間 28s
2012-11-30 18:35:08 (647 KB/s) - stdout へ出力完了 [18847990/18847990]
3.次に以下のように入力
以下のサイトへ行って、指示とおりにする。
https://www.dropbox.com/install?os=lnx
1.以下のように入力(32-bitの場合:)
$ cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86" | tar xzf -
2.すると以下のような画面表示となる。
$ cd ~ && wget -O - "https://www.dropbox.com/download?plat=lnx.x86" | tar xzf -
--2012-11-30 18:34:36-- https://www.dropbox.com/download?plat=lnx.x86
www.dropbox.com (www.dropbox.com) をDNSに問いあわせています... 199.47.216.171, 199.47.217.170, 199.47.217.171, ...
www.dropbox.com (www.dropbox.com)|199.47.216.171|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 302 FOUND
場所: https://dl-web.dropbox.com/u/17/dropbox-lnx.x86-1.6.2.tar.gz [続く]
--2012-11-30 18:34:37-- https://dl-web.dropbox.com/u/17/dropbox-lnx.x86-1.6.2.tar.gz
dl-web.dropbox.com (dl-web.dropbox.com) をDNSに問いあわせています... 184.73.223.62, 23.23.136.122, 174.129.27.95, ...
dl-web.dropbox.com (dl-web.dropbox.com)|184.73.223.62|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 18847990 (18M) [application/x-tar]
`STDOUT' に保存中
100%[======================================>] 18,847,990 574K/s 時間 28s
2012-11-30 18:35:08 (647 KB/s) - stdout へ出力完了 [18847990/18847990]
3.次に以下のように入力
$ ~/.dropbox-dist/dropboxd
Windows8 優待購入プログラムが登録できない
DSP版Windows7を購入して、Windows8 優待購入プログラムにより、Windows8Proアップグレードを1200円で購入できると思っていたのだが.....
以下のサイトからWindows8優待購入プログラムへ登録できるはずである。
http://windowsupgradeoffer.com/ja-JP
ところがどうもWindows8 優待購入プログラムが通らない。個人情報を入力したあとでプロダクトキーを入力すると以下のようなメッセージが表示されてしまう。
お客様のプロダクト キーはライセンス認証されていません。 このプログラムに登録するには、Windows 7 製品のライセンス認証を行い、お客様の情報を再送信してください。
気を取り直して、Windows7のライセンス認証を済ませてからもう一度、やっても同じメッセージが表示されてしまった。さらにもう一度、やろうとすると今度はプロダクトキーを入力する前に以下のようなメッセージが表示されてしまった。
残念ながら、登録時にご提供いただいた内容では、プログラムへの参加資格が確認できませんでした。
ちなみに「登録状況」のところで、参照IDを入力してみると以下のようなメッセージが表示されてしまう。
あなたのアカウントへのアクセスが中断されています。
マイクロソフトのサポート(0120-70-2077)に電話連絡して事情を説明すると、名前、電話番号、Windows7のプロダクトキーなどを聞かれたあと「調べるのに1週間程度かかる。結果は電子メールで連絡する」との返答だった。
ちょうど一週間後に、マイクロソフトから「登録確認」の連絡とプロモーションコードが電子メールで送付されてきた。それ以外に以下の内容のメールも届いた。
先日、お知らせいただきましたプロダクトキーをお調べした結果、
Windows 8 優待購入プログラムの対象として問題なくご登録できる事が確認と れましたので当事務局にて登録手続きを行いました。 お客様にはご登録したメールアドレス宛に件名『Windows 8 優待購入プログラム への登録確認』のメールをお送りしておりますのでお時間があります際にご一読くださいませ。
届いたプロモーションコードを使って1,200円で、無事にWindows8Proアップグレードを購入することができた。(なお購入する場合にはクレジットカード又はVプリカが必要だった。)
なお、はじめ登録できなかったのは、Windows7のライセンス認証をする前にWindows8優待購入プログラムを登録しようとしてしまったからだと思う。いったんエラーになるとロックがかかってしまい後からラインセス認証してやり直しても通らなかったのだと思う。たぶん。
以下のサイトからWindows8優待購入プログラムへ登録できるはずである。
http://windowsupgradeoffer.com/ja-JP
ところがどうもWindows8 優待購入プログラムが通らない。個人情報を入力したあとでプロダクトキーを入力すると以下のようなメッセージが表示されてしまう。
お客様のプロダクト キーはライセンス認証されていません。 このプログラムに登録するには、Windows 7 製品のライセンス認証を行い、お客様の情報を再送信してください。
気を取り直して、Windows7のライセンス認証を済ませてからもう一度、やっても同じメッセージが表示されてしまった。さらにもう一度、やろうとすると今度はプロダクトキーを入力する前に以下のようなメッセージが表示されてしまった。
残念ながら、登録時にご提供いただいた内容では、プログラムへの参加資格が確認できませんでした。
ちなみに「登録状況」のところで、参照IDを入力してみると以下のようなメッセージが表示されてしまう。
あなたのアカウントへのアクセスが中断されています。
マイクロソフトのサポート(0120-70-2077)に電話連絡して事情を説明すると、名前、電話番号、Windows7のプロダクトキーなどを聞かれたあと「調べるのに1週間程度かかる。結果は電子メールで連絡する」との返答だった。
ちょうど一週間後に、マイクロソフトから「登録確認」の連絡とプロモーションコードが電子メールで送付されてきた。それ以外に以下の内容のメールも届いた。
先日、お知らせいただきましたプロダクトキーをお調べした結果、
Windows 8 優待購入プログラムの対象として問題なくご登録できる事が確認と
届いたプロモーションコードを使って1,200円で、無事にWindows8Proアップグレードを購入することができた。(なお購入する場合にはクレジットカード又はVプリカが必要だった。)
なお、はじめ登録できなかったのは、Windows7のライセンス認証をする前にWindows8優待購入プログラムを登録しようとしてしまったからだと思う。いったんエラーになるとロックがかかってしまい後からラインセス認証してやり直しても通らなかったのだと思う。たぶん。
2012年11月29日木曜日
Microsoft Office2010 Home&Student 日本語対応『並行輸入品』を購入した
AmazonでMicrosoft Office2010 Home&Student 日本語対応『並行輸入品』【プロダクトキー】を購入しました。値段は2,870円でした。これには、以下の4つが含まれています。
Word
Excel
Powerpoint
OneNote
非商用目的という制限がありますが、MicrosoftのOfficeがこれだけの値段で手に入れられれば安いものです。届いたのは中国語のパッケージに入ったプロダクトキーのみで媒体はありませんでした。Microsoftのバックアップのサイトから英語版のOffice2010 Home&Student をダウンロードしてWindows7のパソコンにインストール後に、日本語化しました。その後、電話でライセンス認証しました。(このあたりの作業は、アマゾンのカスタマーレビューに書いてあったのを参考にしました。はじめから日本語ではないという点と、電話でライセンス認証しなくてはならないという点が手間ですが、安いのだからと我慢できます。ただしOfficeを起動すると「非商用目的」と表示されます。)
Microsoftのバックアップのサイト
http://office.microsoft.com/ja-jp/products/FX101828860.aspx
日本語化するときには以下のサイトから、日本語化のためのプログラムをダウンロードしました。正規のオフィスラインセンスを持っている限り、アクティベーション不要で使用できるようなことが英語で書いてあります。なぜフリーなのかよくわからないのですが、使用される場合には自己責任でお願い致します。(
http://www.mydigitallife.info/office-2010-language-packs-free-official-direct-download-links/
心配なのは、例えばハードディスクがクラッシュした時などこれを再インストールするとライセンス認証はうまくいくのだろうかということです。これはやってみないとわからないのですが、もしダメだったらと思うと怖くて試すことができません。
なお、以下の商品は、3台まで、インストールできるタイプのものです。
また以下の商品は、以前は 次期Office2013への無償アップグレード対象となっていましたが、現在はその記述がなくなってしまっています。??
例えばExcelを起動すると、以下のように「Microsoft Excel 非商用目的」と表示されます。
2012年11月21日水曜日
ubuntu コマンドラインからシャットダウンするには
ubuntu でコマンドラインからシャットダウンするには、以下のように入力します。すぐにシャットダウンが始まります。
sudo shutdown -h now
例えば、5分後にシャットダウンしたい場合には、以下のように入力します。
sudo shutdown -h +5
20時54分ににシャットダウンしたい場合には、以下のように入力します。
sudo shutdown -h 20:54
sudo shutdown -h now
例えば、5分後にシャットダウンしたい場合には、以下のように入力します。
sudo shutdown -h +5
20時54分ににシャットダウンしたい場合には、以下のように入力します。
sudo shutdown -h 20:54
ubuntu コマンドライン画面(コンソール)と端末
ubuntu では、Ctrl+Alt+F1 を押すことにより、コマンドラインの画面(コンソール)に移ることができます。また、F1の代わりにF2~F6のキーを押してもそれぞれのコマンドラインの画面(コンソール)に移ることができます。
コマンドラインの画面では、ls や cd や vi などのいわゆるコマンドを使うことができます。
コマンドラインの画面から、もとのグラフィックの画面に戻るためには、Ctrl+Alt+F7 を押します。
またグラフィックの画面で、Ctrl+Alt+T を押すことにより、いわゆる「端末」(terminal)を呼び出すことができます。端末上でも、いわゆるコマンドが使用できます。
私の環境(ubuntu12.10)では、コンソール上では、日本語の表示ができません。端末上だと日本語の表示ができます。以下は端末の画面です。
コマンドラインの画面では、ls や cd や vi などのいわゆるコマンドを使うことができます。
コマンドラインの画面から、もとのグラフィックの画面に戻るためには、Ctrl+Alt+F7 を押します。
またグラフィックの画面で、Ctrl+Alt+T を押すことにより、いわゆる「端末」(terminal)を呼び出すことができます。端末上でも、いわゆるコマンドが使用できます。
私の環境(ubuntu12.10)では、コンソール上では、日本語の表示ができません。端末上だと日本語の表示ができます。以下は端末の画面です。
ビデオチップを確認するには(dxdiag)
ビデオチップを確認するには、「ファイル名を指定して実行(R)」のところで dxdiag と入力します。DirectX診断ツールが表示されますので、「ディスプレイ」タブをクリックします。(WindowsVistaの場合)
2012年11月20日火曜日
WindowsXP が起動しなくなった時のための覚え書き
WindowsXP が起動しなくなった時に役に立つかもしれない覚え書き
通常はCドライブ直下にある、boot.ini ファイルの中身を見てみる。(boot.iniは通常は非表示になっているので要注意)
回復コンソールに入って、使うコマンド(ただし、以下のコマンドを使ってしまうとリカバリできなくなる場合もあるので要注意とのことです。)
fixboot
fixmbr
bootcfg /rebuild
回復コンソールをあらかじめインストールしておく方法
Dドライブにディスクが入っているとして
D:\i386\winnt32.exe /cmdcons
私の場合には、外付けハードディスクにも、WindowsXPをインストールしようとして失敗して、その後、今まで起動できていた内蔵ディスクからも起動できなくなってしまいました。回復コンソールに入って fixboot をやってみましたが駄目でした。bootcfg /rebuild を実行したところ、いくつかの質問が表示され、それに答えて入力したところ、その後、起動できるようになりました。原因は、boot.ini ファイルの内容がおかしくなっていたためでした。はじめに、boot.ini ファイルの内容を確認してみればよかったのですが、気がつきませんでした。
通常はCドライブ直下にある、boot.ini ファイルの中身を見てみる。(boot.iniは通常は非表示になっているので要注意)
回復コンソールに入って、使うコマンド(ただし、以下のコマンドを使ってしまうとリカバリできなくなる場合もあるので要注意とのことです。)
fixboot
fixmbr
bootcfg /rebuild
回復コンソールをあらかじめインストールしておく方法
Dドライブにディスクが入っているとして
D:\i386\winnt32.exe /cmdcons
私の場合には、外付けハードディスクにも、WindowsXPをインストールしようとして失敗して、その後、今まで起動できていた内蔵ディスクからも起動できなくなってしまいました。回復コンソールに入って fixboot をやってみましたが駄目でした。bootcfg /rebuild を実行したところ、いくつかの質問が表示され、それに答えて入力したところ、その後、起動できるようになりました。原因は、boot.ini ファイルの内容がおかしくなっていたためでした。はじめに、boot.ini ファイルの内容を確認してみればよかったのですが、気がつきませんでした。
Windows 7 Enterprise 評価版
以下のサイトから、Windows 7 Enterprise 評価版をダウンロードすることができます。90日間の評価のための使用をすることができます。ダウンロード有効期限は 2012 年 12 月 30 日とのことです。
http://technet.microsoft.com/ja-jp/evalcenter/cc442495.aspx
(インストールしてから10日以内にライセンス認証することが必要です。ライセンス認証が終わるとその時点から90日間使用できるらしいです。)
Windows 8 Enterprise 評価版
以下のサイトから Windows 8 Enterprise 評価版をダウンロードすることができます。この評価版は90日間使用することができます。
http://technet.microsoft.com/ja-JP/evalcenter/hh699156.aspx
私は、ここで、ダウンロードしたiso ファイルをDVDに焼いてインストールディスクを作成しました。
このディスクからブートできるようになっているはずですが、私の持っているデスクトップPCでは、0x0000005D のエラーコードが表示されて、ブートしませんでした。
また、いったんPCをWindowsXPで起動させてから、このDVDを挿入して、インストールしようとしたところ、途中でエラーが発生してインストールに失敗しました。
理由はCPU(Pentium4 2.4GHz)がWindows8に対応していないためでした。
なお、一方で私の持っているノートPCでは、上記のエラーが出ることはなく、正常にインストールできました。
このように、Windows 8 Enterprise 評価版は、PCがWindows8に対応しているかどうかを調べる目的で使用することができます。
http://technet.microsoft.com/ja-JP/evalcenter/hh699156.aspx
私は、ここで、ダウンロードしたiso ファイルをDVDに焼いてインストールディスクを作成しました。
このディスクからブートできるようになっているはずですが、私の持っているデスクトップPCでは、0x0000005D のエラーコードが表示されて、ブートしませんでした。
また、いったんPCをWindowsXPで起動させてから、このDVDを挿入して、インストールしようとしたところ、途中でエラーが発生してインストールに失敗しました。
理由はCPU(Pentium4 2.4GHz)がWindows8に対応していないためでした。
なお、一方で私の持っているノートPCでは、上記のエラーが出ることはなく、正常にインストールできました。
このように、Windows 8 Enterprise 評価版は、PCがWindows8に対応しているかどうかを調べる目的で使用することができます。
Windows7 のisoファイルのダウンロード
Windows7のiso ファイルがダウンロードできるそうです。どこのサイトからダウンロードすればよいかは以下のサイトからわかります。ただし、既にこれはライセンスを持っている人が、自分用のインストールディスクを作成するためのもののようです。(またたぶん英語版です。)
http://www.mydigitallife.info/windows-7-iso-x86-and-x64-official-direct-download-links-ultimate-professional-and-home-premium/
(注意)このサイトは、残念ながら現在はなくなってしまったようです。(平成25年5月3日)代わりに以下のサイトからダウンロードサイトにたどり着けます。
http://kentayx.neofig.com/2012/05/windows-7-iso.html
http://techpp.com/2009/11/11/download-windows-7-iso-official-direct-download-links/
Windows 7はWindows Vistaと同様にアクティベーションキーなしでも最大120日間使用出来るそうです。
マイクロソフトが新規ユーザ向けの「猶予期間」と呼ぶ、この30日間の限定試用期間の最終日にcmdからコマンドラインコードslmgr -rearmを入力するとこの試用期間が新たに30日延長されます。これは3回まで行うことができるので、30x3+最初の30日の合計120日間は問題なく使える計算になります。なお、コマンドラインからslmgr -dlv と入力するとあと何回延長できるかわかるそうです。(Windows7の場合)
http://technet.microsoft.com/ja-jp/library/bb490216.aspx
なお、アクティベーションキーなしで、30日を経過して、この slmgr -rearm というコマンドを入力しないでいると以下のサイトで記述されているような状態になります。(平成25年7月2日)
http://chaos-fractal.blogspot.jp/2013/07/windows7-30.html
●上記のことから、ラインセンスキーがなくても、120日ごとにWindows7をインストールし直せば永久にWindows7 を使えるのはないかと考えた人もいらっしゃるでしょう。実は私もそう考えました。しかしながら、120日ごとにインストールし直しするというのは結構めんどうなことです。しかもWindwos7の上で動作するアプリケーションもやはりそれぞれインストールし直しをしなくてはなりません。テスト機ならともかく、そのやり方は実用には耐えないように思います。
●なお、アクティベーションなしで、1年間使用する方法?が見つかりました?。以下のサイトでご紹介しています。(平成25年7月26日)
http://chaos-fractal.blogspot.jp/2013/07/windows-vista-windows71.html
●ウイルス対策ソフトとして Micorsoft Security Essentials を使用している場合、slmgr -rearm を使って期限延長していると、Windows7 が正規品ではないというメッセージが表示されることがあります。
http://chaos-fractal.blogspot.jp/2013/08/microsoft-security-essentials-windows7.html
Microsoft Office 2010 評価版を最大6ヵ月間利用する
2012年11月現在、マイクロソフトのサイトからOffice2010をダウンロードすることができます。そうしてインストール時に、評価版用のプロダクトキーを入力することにより、60日間使用できます。
http://www7.buyoffice.microsoft.com/jpn/default.aspx?cache=-1919362408
この60日間の評価期間を最大6ヵ月まで、延長する方法が書いてあるサイトを見つけました。
ツールを使う方法
http://masaf129.blog56.fc2.com/blog-entry-1935.html
コマンドラインからコマンド入力する方法
http://tamba-yu.blog.eonet.jp/eoblog/2012/02/office-2010-ff4e.html
コマンドプロンプトの管理者として実行を選択します。
\Program Files\Common Files\Microsoft Shared\OfficeSoftwareProtectionPlatform
に移動します。 (cd \----)
メモ:
Windows 64 ビット版に Office 2010 32 ビット版をインストールした場合、このパスは
\Program Files (x86)\Common Files\Microsoft Shared\OfficeSoftwareProtectionPlatform
になることがあります。
コマンド プロンプトで、ospprearm.exe と入力します。
http://www7.buyoffice.microsoft.com/jpn/default.aspx?cache=-1919362408
この60日間の評価期間を最大6ヵ月まで、延長する方法が書いてあるサイトを見つけました。
ツールを使う方法
http://masaf129.blog56.fc2.com/blog-entry-1935.html
コマンドラインからコマンド入力する方法
http://tamba-yu.blog.eonet.jp/eoblog/2012/02/office-2010-ff4e.html
コマンドプロンプトの管理者として実行を選択します。
\Program Files\Common Files\Microsoft Shared\OfficeSoftwareProtectionPlatform
に移動します。 (cd \----)
メモ:
Windows 64 ビット版に Office 2010 32 ビット版をインストールした場合、このパスは
\Program Files (x86)\Common Files\Microsoft Shared\OfficeSoftwareProtectionPlatform
になることがあります。
コマンド プロンプトで、ospprearm.exe と入力します。
Windows7 を最大120日間使用する方法
Windows7のインストールでは、プロダクトキーなしでもできるそうです。プロダクトキーなしの場合には、30日間の評価版となるそうです。さらに、この30日間という評価期限を3回まで延長できるそうです。(コマンドラインから、slmgr -rearmと入力する)結果として120日間は評価で使用できることになります。詳しくは以下のサイトをご覧ください。
http://www.lifehacker.jp/2009/08/090824windows_7120.html
(英語)
http://www.pcworld.com/article/170492/windows_7_will_run_120_days_for_free.html
2012年11月19日月曜日
Ubuntu で iso ファイルからブートする
Ubuntu12.10がリリースされたのでisoファイルをダウンロードしました。このisoファイルを、普通はDVDに焼いてブートさせるのですが、HDDに置いてあるisoファイルからブートさせる方法があります。以下のサイトに書いてありましたので試してみました。
http://blog.livedoor.jp/vine_user/archives/51561790.html?1269852308
また、isoファイルをUSBに書き込んで、USBからブートさせる方法もあります。この場合にはUbuntuに用意されている、「スタートアップ・ディスクの作成」を使用します。
http://blog.livedoor.jp/vine_user/archives/51561790.html?1269852308
また、isoファイルをUSBに書き込んで、USBからブートさせる方法もあります。この場合にはUbuntuに用意されている、「スタートアップ・ディスクの作成」を使用します。
DELLのPCでファンが壊れた
持っているDELLのPCで、起動時に以下のようなメッセージが表示されるようになりました。なお、ファンの回る音がしなくなりました。
Alert! previous fan failure
Strike the F1 key to continue, F2 to run the setup utility
ここでF1 キーを押すと起動するのですが、しばらくすると、電源が落ちてしまいます。ファンが壊れているのだと思い、後ろから扇風機の風を送るようにすると落ちるまでの時間が長くなります。
DELLのサポートに連絡したところ、やはりファンの異常により、内部に熱がたまり それを検知して電源が落ちているのだそうです。修理が必要ですが、2~3万円かかり、現在は4万円で新品が買えるので、新品を買ったほうがよいですと言われました。
半年後に続く
Alert! previous fan failure
Strike the F1 key to continue, F2 to run the setup utility
ここでF1 キーを押すと起動するのですが、しばらくすると、電源が落ちてしまいます。ファンが壊れているのだと思い、後ろから扇風機の風を送るようにすると落ちるまでの時間が長くなります。
DELLのサポートに連絡したところ、やはりファンの異常により、内部に熱がたまり それを検知して電源が落ちているのだそうです。修理が必要ですが、2~3万円かかり、現在は4万円で新品が買えるので、新品を買ったほうがよいですと言われました。
半年後に続く
2012年11月13日火曜日
プロダクトキーを調べる
Magical Jelly Bean Keyfinder というプログラムをダウンロードしました。このプログラムでは、パソコンにインストールされているWindowsOSやOfficeなどのソフトウエアのプロダクトキーを表示したり、ファイルに保存したりする機能があります。私の場合には、WindowsVistaやOffice2007などのやや古い製品なので、このプログラムで取り出すことができました。ただし、Windows7やOffice2010などの新しい製品のプロダクトキーを取り出すには、有料版のプログラムのほうを使う必要があります。
Magical Jelly Bean Keyfinderのホームページ
http://www.magicaljellybean.com/
Magical Jelly Bean Keyfinderのホームページ
http://www.magicaljellybean.com/
Adware ?に感染
ダウンロードサイトから、あるファイルをダウンロードしようとしたら、その後、ブラウザの始めに表示されるホームページが変わってしまい、YourFileDownloader というソフトがメモリに常駐するようになりました。「なんか怪しいソフトだな。スパイウエアかもしれない。」と思って、spybot でスキャンしたところ、案の定Adware? と判明しました。
spybot で削除しました。
spybot で削除しました。
2012年11月10日土曜日
Windows8にアップグレードできない
●Windows8にアップグレードできない
10月26日にWindows8が発売されましたが、WindowsXP で使用している家のパソコンをWindows8にアップグレードできるかどうか調べてみました。もしOKなら、3300円を払えばWindows8proにアップグレードできることになります。結果はNGでした。Windows8アップグレードのサイトへ行ってパソコンがWindows8に対応しているかどうか調べるアップグレードアシスタントというプログラムをダウンロードして実行してみたところ、メモリが足りないというメッセージが出ました。Windows8を起動するために必要なメモリは1ギガですがこのPCは、512メガしかありません。調べるために実行したプログラムは以下です。
Windows8-UpgradeAssistant.exe
そこでメモリを十分積んだ別のマシンでこのプログラムを実行してみました。
今度は、CPUが対応していないということがわかりました。Windows8を動作させるためには、CPUがNX(またはXD)という機能をサポートしている必要があります。以下のサイトからダウンロードできる資料の中にでてくるCoreinfo.exeというプログラムでNXがサポートされているかどうか調べることができます。
http://msdn.microsoft.com/ja-jp/library/windows/hardware/hh975398.aspx
結果はNXのところが、*ではなくて-が表示されてしまい「サポートされていない」ということがわかりました。CPUは、Pentium4(2.4GHz)ですが駄目なようです。これでは、3,300円出しても、Windows8を動作させることができません。残念です。
●Windows8 が駄目なら Windows7に
それではWindows8が駄目だとするとせめてWindows7が動作しないかどうかを検討していました。
CPUがPentium4 2.4GHz のPCですが、最近メモリを2Gに増設したばかりのため、まだ捨てるのはもったいないと思っています。
Windows7は、使いやすく、完成度が高いと聞いています。なお、Windows7のサポート期限は、2020年です。それまでPCの寿命を延ばすことができると考えています。
Windows8Proにはダウングレード権がついているという話を聞いたことがあります。3,300円出してWindows8Proを購入し、その後ダウングレード権を行使して、Windows7proにできないだろうかと思いつきました。WindowsXPから3,300円でWindows7proにアップできれば安い買い物です。Windows7のDVDはありませんが以下でisoファイルのダウンロードサイトがわかります。
http://www.mydigitallife.info/windows-7-iso-x86-and-x64-official-direct-download-links-ultimate-professional-and-home-premium/
ところがインターネットでよくよく調べてみると、3,300円のアップグレード版Windows8Proには、ダウングレード権はついていないようなことが書いてありました。これまた残念です。
10月26日にWindows8が発売されましたが、WindowsXP で使用している家のパソコンをWindows8にアップグレードできるかどうか調べてみました。もしOKなら、3300円を払えばWindows8proにアップグレードできることになります。結果はNGでした。Windows8アップグレードのサイトへ行ってパソコンがWindows8に対応しているかどうか調べるアップグレードアシスタントというプログラムをダウンロードして実行してみたところ、メモリが足りないというメッセージが出ました。Windows8を起動するために必要なメモリは1ギガですがこのPCは、512メガしかありません。調べるために実行したプログラムは以下です。
Windows8-UpgradeAssistant.exe
そこでメモリを十分積んだ別のマシンでこのプログラムを実行してみました。
今度は、CPUが対応していないということがわかりました。Windows8を動作させるためには、CPUがNX(またはXD)という機能をサポートしている必要があります。以下のサイトからダウンロードできる資料の中にでてくるCoreinfo.exeというプログラムでNXがサポートされているかどうか調べることができます。
http://msdn.microsoft.com/ja-jp/library/windows/hardware/hh975398.aspx
結果はNXのところが、*ではなくて-が表示されてしまい「サポートされていない」ということがわかりました。CPUは、Pentium4(2.4GHz)ですが駄目なようです。これでは、3,300円出しても、Windows8を動作させることができません。残念です。
●Windows8 が駄目なら Windows7に
それではWindows8が駄目だとするとせめてWindows7が動作しないかどうかを検討していました。
CPUがPentium4 2.4GHz のPCですが、最近メモリを2Gに増設したばかりのため、まだ捨てるのはもったいないと思っています。
Windows7は、使いやすく、完成度が高いと聞いています。なお、Windows7のサポート期限は、2020年です。それまでPCの寿命を延ばすことができると考えています。
Windows8Proにはダウングレード権がついているという話を聞いたことがあります。3,300円出してWindows8Proを購入し、その後ダウングレード権を行使して、Windows7proにできないだろうかと思いつきました。WindowsXPから3,300円でWindows7proにアップできれば安い買い物です。Windows7のDVDはありませんが以下でisoファイルのダウンロードサイトがわかります。
http://www.mydigitallife.info/windows-7-iso-x86-and-x64-official-direct-download-links-ultimate-professional-and-home-premium/
ところがインターネットでよくよく調べてみると、3,300円のアップグレード版Windows8Proには、ダウングレード権はついていないようなことが書いてありました。これまた残念です。
2012年10月6日土曜日
Ubuntu 12.04 で SQLite をODBC登録
UbuntuのLibreOffice のBaseから、SQLiteのデータベースに接続するために、ODBCを経由する方法があります。そのためには、Ubuntu上でSQLiteデータベースをODBC登録する必要があります。
まず、Synapticなどで、libsqliteodbc をインストールします。(unixodbc unixodbc-binもインストールする必要があるかもしれません。)
sudo ODBCManageDataSourcesQ4 (もしくはsudo ODBCCreateDataSourceQ4) を実行します。(Ubuntu11.10では sudo ODBCConfig だったのがUbuntu12.04 ではsudo ODBCManageDataSourcesQ4 に変わったようです。)
Addbボタンを押して、DSNを登録していきます。登録した結果は/etc/odbc.iniに記録されます。またドライバー情報は、/etc/odbcinst.iniに記録されます。なお、以下は私のマシンでの/etc/odbcinst.ini の内容です。
[MySQL ODBC Driver]
Description =
Driver = /usr/lib/i386-linux-gnu/odbc/libmyodbc.so
Setup = /usr/lib/i386-linux-gnu/odbc/libodbcmyS.so
UsageCount = 1
CPTimeout =
CPReuse =
[SQLite]
Description = SQLite ODBC Driver
Driver = /usr/lib/odbc/libsqliteodbc.so
Setup = /usr/lib/odbc/libsqliteodbc.so
UsageCount = 1
[SQLite3]
Description = SQLite3 ODBC Driver
Driver = /usr/lib/odbc/libsqlite3odbc.so
Setup = /usr/lib/odbc/libsqlite3odbc.so
UsageCount = 1
参考サイト
MySQLへのODBC経由の接続
http://chaos-fractal.blogspot.jp/2011/11/mysql-odbc.html
http://chaos-fractal.blogspot.jp/2012/09/ubuntu-libreofficemysql.html
まず、Synapticなどで、libsqliteodbc をインストールします。(unixodbc unixodbc-binもインストールする必要があるかもしれません。)
sudo ODBCManageDataSourcesQ4 (もしくはsudo ODBCCreateDataSourceQ4) を実行します。(Ubuntu11.10では sudo ODBCConfig だったのがUbuntu12.04 ではsudo ODBCManageDataSourcesQ4 に変わったようです。)
Addbボタンを押して、DSNを登録していきます。登録した結果は/etc/odbc.iniに記録されます。またドライバー情報は、/etc/odbcinst.iniに記録されます。なお、以下は私のマシンでの/etc/odbcinst.ini の内容です。
[MySQL ODBC Driver]
Description =
Driver = /usr/lib/i386-linux-gnu/odbc/libmyodbc.so
Setup = /usr/lib/i386-linux-gnu/odbc/libodbcmyS.so
UsageCount = 1
CPTimeout =
CPReuse =
[SQLite]
Description = SQLite ODBC Driver
Driver = /usr/lib/odbc/libsqliteodbc.so
Setup = /usr/lib/odbc/libsqliteodbc.so
UsageCount = 1
[SQLite3]
Description = SQLite3 ODBC Driver
Driver = /usr/lib/odbc/libsqlite3odbc.so
Setup = /usr/lib/odbc/libsqlite3odbc.so
UsageCount = 1
参考サイト
MySQLへのODBC経由の接続
http://chaos-fractal.blogspot.jp/2011/11/mysql-odbc.html
Ubuntu でLibreOffice からMySqlに接続する。
http://chaos-fractal.blogspot.jp/2012/09/ubuntu-libreofficemysql.html
SQLite Database Browser をダウンロードした
●以下のサイトから、SQLiteのデータベースの内容を確認できるブラウザー(sqlitebrowser)をダウンロードしてみました。(Windows版)
http://sourceforge.net/projects/sqlitebrowser/
●Ubuntu12.04の場合には、コマンドラインから以下のように入力することで使用できるようになるようです。
sudo apt-get install sqlitebrowser
●SQLite の内容をGUIで見ることのできるプログラムは他にもいくつかあるようです。以下はそのうちのひとつです。
http://www.forest.impress.co.jp/article/2008/09/04/pupsqlite.html
(2014.7.8)
この pupSQLite というソフトウエアを Windows7 上で走らせてみました。
http://chaos-fractal.blogspot.jp/2014/07/windows-pupsqlite.html
http://sourceforge.net/projects/sqlitebrowser/
●Ubuntu12.04の場合には、コマンドラインから以下のように入力することで使用できるようになるようです。
sudo apt-get install sqlitebrowser
●SQLite の内容をGUIで見ることのできるプログラムは他にもいくつかあるようです。以下はそのうちのひとつです。
http://www.forest.impress.co.jp/article/2008/09/04/pupsqlite.html
(2014.7.8)
この pupSQLite というソフトウエアを Windows7 上で走らせてみました。
http://chaos-fractal.blogspot.jp/2014/07/windows-pupsqlite.html
2012年10月5日金曜日
LibreOffice データベースのサンプル
LibreOfficeのBaseでデータベースをつくったり、簡単な入力フォームを作ったりしたいのだが、何かサンプルのようなものはないだろうかと探したところ、英語ですが以下のようなページが見つかりました。2番めのリンクでサンプルデータベースをダウンロードできるようになっています。
http://ask.libreoffice.org/question/389/where-can-i-find-sample-databases-for-base/
http://www.computeractive.co.uk/ca/download-review/2107781/track-books-dvds-libre-office-base-database
http://ask.libreoffice.org/question/389/where-can-i-find-sample-databases-for-base/
http://www.computeractive.co.uk/ca/download-review/2107781/track-books-dvds-libre-office-base-database
grub2 でデフォルトの起動OSを変更するには
Ubuntuをインストールすると、起動時にOSを選択できるメニューが表示されます。Windowsとデュアルブートにしてある場合に、デフォルトの起動OSの選択をWindowsにしておきたい場合などがあると思われます。そのような場合のデフォルトの起動OSを変更する方法をメモしておきます。Ubuntu12.04 で動作確認しました。
1.デフォルトにしたいOSがメニューの何番目に表示されるか確認しておきます。
2.sudo gedit /etc/default/grub を実行します。
3.GRUB_DEFALUT=0 となっているところを変更します。
例えばメニューの6番めをデフォルトにしたい場合にはGRUB_DEFALUT=5とします。
4.sudo update-grub を実行します。
1.デフォルトにしたいOSがメニューの何番目に表示されるか確認しておきます。
2.sudo gedit /etc/default/grub を実行します。
3.GRUB_DEFALUT=0 となっているところを変更します。
例えばメニューの6番めをデフォルトにしたい場合にはGRUB_DEFALUT=5とします。
4.sudo update-grub を実行します。
2012年10月4日木曜日
Perl から ODBC経由でAccessデータベースへ接続
以下はPerl から ODBC経由でAccessデータベースへ接続するサンプルです。(Windows上で動作)あらかじめODBCの登録を行っておく必要があります。以下のサンプルでは、DSN="passwd" としています。
Ubuntu で github
githubについて忘れないようにするためのメモ
●リポジトリを作成するには
-自分のgithub のwebページでリポジトリを作成(Create)する。リポジトリ名をStockDbとする。
-ローカルのマシンで以下のように入力
mkdir StockDb
- cd StockDb
- touch README.md
- git init
- git add README.md
- git commit -m "first commit"
- github のユーザ名をcofearabiとすると以下のように入力
git remote add origin https://github.com/cofearabi/StockDb.git
- git push -u origin master
●github のリポジトリのクローンをローカルに作成するには例えば以下のように入力する
- git clone https://github.com/cofearabi/StockDb.git
参考にさせていただいたサイト
https://help.github.com/articles/fork-a-repo
●リポジトリを作成するには
-自分のgithub のwebページでリポジトリを作成(Create)する。リポジトリ名をStockDbとする。
-ローカルのマシンで以下のように入力
mkdir StockDb
- cd StockDb
- touch README.md
- git init
- git add README.md
- git commit -m "first commit"
- github のユーザ名をcofearabiとすると以下のように入力
git remote add origin https://github.com/cofearabi/StockDb.git
- git push -u origin master
●github のリポジトリのクローンをローカルに作成するには例えば以下のように入力する
- git clone https://github.com/cofearabi/StockDb.git
参考にさせていただいたサイト
https://help.github.com/articles/fork-a-repo
PHP でMysql のテーブルの内容を表示
PHP でMysql のテーブルの内容を表示するcgiプログラムです。stock_dbというデータベースのstockというテーブルの内容を表示しています。フィールド名やフィールドの数などはプログラム内部で調べています。
2012年10月1日月曜日
LibreOffice のマクロからAccessデータベースに接続(CreateObject とADO)
以下のサンプルでは、LibreOffice3.5.6.2(Windows) のマクロからAccess2003データベースに接続しています。CreateObject とADOを使用しています。c:\passwd.mdb" というAccessデータベースには、password というテーブルがあってkeyword,password,dateなどのフィールドが存在します。Excelのマクロとしても動作するはずです。
sub adodb Set conn = CreateObject("ADODB.Connection") Set rs = CreateObject("ADODB.Recordset") conn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=c:\passwd.mdb" rs.Open "select * from password", conn ,3,3 msgbox rs.fields.Count msgbox rs.recordcount rs.movefirst rs.MoveNext MsgBox "--" & rs.Fields.Item("keyword") rs.Addnew rs.Fields.Item("keyword")="AAAAA" rs.Fields.Item("password")="GUESS" rs.Fields.Item("date")="2012/10/01" rs.Update rs.Close conn.Close msgbox "end" end sub
2012年9月28日金曜日
Perl で sscanf
Perl で例えば 2012年9月1日 のような日付を、2012/09/01 のような形式に変換したい場合があります。以下はそのための、sscanf を使ったサンプルです。
use String::Scanf; my $hiduke0 = "2012年9月1日"; my ($a,$b,$c)=sscanf('%d年%d月%d日',$hiduke0); printf('%4d/%02d/%02d'. "\n" , $a,$b,$c);
2012年9月26日水曜日
LibreOffice のマクロで、MySqlに接続する
LibreOfficeではマクロが使用できます。使用したのは、Unix(Ubuntu12.04)上で動作するLibreOfficeのバージョン3.5.4.2です。
以下はMySQLに接続して、レコードを挿入するサンプルです。ユーザ名とパスワードは'root'でデータベース名は、stock_dbでテーブル名は、stock です。
以下はMySQLに接続して、レコードを挿入するサンプルです。ユーザ名とパスワードは'root'でデータベース名は、stock_dbでテーブル名は、stock です。
sub main7 Dim DatabaseContext as object Dim DataSource as Object Dim Connection as Object Dim Statement as Object Dim sSQL as String Dim oResultSet as Object Dim nDlgResult As Integer Dim sURL as String Dim oProps(2) as new com.sun.star.beans.PropertyValue ' ***** データベースのコネクション ***** DatabaseContext=createUnoService("com.sun.star.sdbc.DriverManager") sURL = "jdbc:mysql://127.0.0.1:3306/stock_db?useUnicode=true&characterEncoding=UTF-8" oProps(0).Name = "user" oProps(0).value = "root" oProps(1).Name = "password" oProps(1).value = "root" oProps(2).name = "JavaDriverClass" oProps(2).value = "com.mysql.jdbc.Driver" Connection = DatabaseContext.getConnectionWithInfo(sURL, oProps()) ' ***** SQLの実行 ***** Statement = Connection.createStatement() nResult = Statement.executeUpdate("INSERT INTO stock (code,hiduke,jikoku,price )" & _ "VALUES (1003, '2012/09/24','15:00',12400)") ' oResultSet = Statement.executeQuery("SELECT * FROM stock;") ' oResultSet.Next ' Msgbox(oResultSet.getString(1)) ' ***** データベースを閉じる ***** Statement.Close() Connection.Close() Connection.Dispose() end sub
OpenOffice(LibreOffice)からAccessデータベースに接続
OpenOfficeでAccessのデータベースへ接続することができます。Accessを持っていなくてもテーブルの中身を見ることができるので便利です。Windows版のOpenOffice3.4.1を使用しました。Windows版LibreOffice3.5.6.2でも試したところ同様に見ることができました。Access2003のmdbファイルの中身を見ることができました。
Java から Access の mdb に接続する
以下は、JavaでAccessのmdbにODBC経由で接続して、テーブルの中身を表示するサンプルです。WindowsXPを使用しています。あらかじめコントロールパネルの管理ツールで、ODBCデータソースを設定しておきます。サンプルではデータソース名は、passwdでテーブル名はpasswordです。テーブルの中には、uniq_id,keyword,password,dateというフィールドが存在します。日本語が文字化けする場合があります。
(2014.7.9)この方法は、 Java 8 になってからは使用できなくなりました。
http://chaos-fractal.blogspot.jp/2014/07/java-access-jdbc-odbc.html
import java.sql.*; public class password { public static void main(String[] args) { try{ // Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); // Connection con=DriverManager.getConnection("jdbc:odbc:passwd"); // Statement stmt = con.createStatement(); // String sql = "SELECT * FROM password"; // ResultSet rs = stmt.executeQuery(sql); // while(rs.next()){ // int uniq_id = rs.getInt("uniq_id"); // String keyword = rs.getString("keyword"); // String password = rs.getString("password"); // String date = rs.getString("date"); // System.out.println(uniq_id + " " + keyword + " " + password + " " + date); } stmt.close(); con.close(); }catch(Exception e){ e.printStackTrace(); } } }
(2014.7.9)この方法は、 Java 8 になってからは使用できなくなりました。
http://chaos-fractal.blogspot.jp/2014/07/java-access-jdbc-odbc.html
2012年9月25日火曜日
Perl からMySqlに接続する
以下のサンプルは、インターネットのどこかに載っていたのをほとんどそのまま使用しています。(感謝)cgi として動作するようになっているはずです。ユーザ名とパスワードは'root'としています。またデータベース名はstock_db、 テーブル名はstock としています。
#!/usr/bin/perl use DBI; $dbuser="root"; $dbpass="root"; $dbname="stock_db"; $sql="select * from stock"; $dsn = "DBI:mysql:$dbname"; $dsh = DBI -> connect ( $dsn, $dbuser, $dbpass , { RaiseError => 0 } ); $sth = $dsh->prepare($sql); $sth->execute; $num_rows = $sth->rows; print "Content-type: text/html\n\n"; print <<HTML_HEAD; HTML_HEAD if ($dsh) { print "successfully connected to the database<br>\n"; } else { print "fail to connect to the database<br>\n"; } print "number of records : $num_rows <br>\n"; for ($i=0; $i<$num_rows; $i++) { @a = $sth->fetchrow_array; print "code=$a[0], hiduke=$a[1] ,jikoku=$a[2] ,price=$a[3]<br>\n"; } print <<HTML_TAIL; HTML_TAIL $sth->finish; $dsh -> disconnect; exit(0);
PHP から MySql に接続する
PHP から MySql に接続して、テーブルの内容を表示するサンプルです。ユーザー名とパスワードは'root'にしてあります。データベース名は、'stock_db'でテーブル名は、'stock'です。
-------------------------------------------------------------------
<html>
<head>
<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=utf-8">
</head>
<?php
$server = '127.0.0.1';
$username = 'root';
$password = 'root';
$link = mysql_connect($server, $username, $password);
if (!$link) {
die('can not connect : ' . mysql_error());
}
echo 'successfully connected';
$db_selected = mysql_select_db('stock_db',$link);
if (!$db_selected){
die('fail to select database'.mysql_error());
}
$result = mysql_query('SELECT * FROM stock');
if (!$result) {
die('query fail'.mysql_error());
}
$numFields = mysql_num_fields($result);
print("<br>num of fields:");
print($numFields);
$nameFields = array();
for($i=0;$i<$numFields;$i++){
$nameFields[] = mysql_field_name($result, $i);
}
print("<br>");
print("<table border=1>");
print("<tr>");
for($j=0;$j<$numFields;$j++){
print("<td>");
print($nameFields[$j]);
print("</td>");
}
print("</tr>");
while ($row = mysql_fetch_assoc($result)) {
print("<tr>");
for($j=0;$j<$numFields;$j++){
print("<td>");
print($row[$nameFields[$j]]);
print("</td>");
}
print("</tr>");
}
print("</table>");
mysql_close($link);
?>
</html>
-------------------------------------------------------------------
-------------------------------------------------------------------
<html>
<head>
<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=utf-8">
</head>
<?php
$server = '127.0.0.1';
$username = 'root';
$password = 'root';
$link = mysql_connect($server, $username, $password);
if (!$link) {
die('can not connect : ' . mysql_error());
}
echo 'successfully connected';
$db_selected = mysql_select_db('stock_db',$link);
if (!$db_selected){
die('fail to select database'.mysql_error());
}
$result = mysql_query('SELECT * FROM stock');
if (!$result) {
die('query fail'.mysql_error());
}
$numFields = mysql_num_fields($result);
print("<br>num of fields:");
print($numFields);
$nameFields = array();
for($i=0;$i<$numFields;$i++){
$nameFields[] = mysql_field_name($result, $i);
}
print("<br>");
print("<table border=1>");
print("<tr>");
for($j=0;$j<$numFields;$j++){
print("<td>");
print($nameFields[$j]);
print("</td>");
}
print("</tr>");
while ($row = mysql_fetch_assoc($result)) {
print("<tr>");
for($j=0;$j<$numFields;$j++){
print("<td>");
print($row[$nameFields[$j]]);
print("</td>");
}
print("</tr>");
}
print("</table>");
mysql_close($link);
?>
</html>
-------------------------------------------------------------------
2012年9月22日土曜日
Ubuntu でLibreOffice からMySqlに接続する。
使用したバージョン Ubuntu 12.04 LibreOffice 3.4.5.2
Ubuntu のLibreOfficeのBaseからMySqlに接続する方法は3とおりあるようです。ODBC、JDBCを使う方法と、ダイレクト(直接)に接続する方法です。
●ODBCを使用するには、以下を実行してからsudo ODBCConfig で設定を行ないます。(ただし、Ubuntu12.04ではODBCConfigがコマンドが見つかりませんとなってしまい実行できません。
代わりに sudo ODBCManageDataSourcesQ4 を実行し、ODBC設定を行ないます。)
sudo apt-get install unixodbc unixodbc-bin libmyodbc
ドライバーの情報およびODBC登録した結果は/etc/odbcinst.ini および/etc/odbc.ini に記録されます。以下は、私のマシンでの/etc/odbcinst.ini の内容です。
[MySQL ODBC Driver] Description = Driver = /usr/lib/i386-linux-gnu/odbc/libmyodbc.so Setup = /usr/lib/i386-linux-gnu/odbc/libodbcmyS.so UsageCount = 1 CPTimeout = CPReuse =
以下のサイトを参照しました。
http://sourceforge.jp/magazine/07/02/28/0121236
●JDBC経由でMySqlに接続しようとして、はじめはうまくいきませんでしたが、以下のサイトを参照してできるようになりました。http://maxolasersquad.blogspot.jp/2011/03/connect-to-mysql-database-from.html
準備として以下を実行する必要があるようです。
sudo apt-get install libmysql-java
●ダイレクトに接続する方法としては、以下のサイトを参照しました。
http://ns.uchb.net/os/libreoffice.html
Synapticパッケージマネージャから"openclipart-libreoffice"をインストールします。
●参考
MySQLへのODBC経由での接続
http://chaos-fractal.blogspot.jp/2011/11/mysql-odbc.html
OpenOfficeからSQLiteに接続する
http://www.serendip.ws/archives/5250
Javaでコマンドラインから入力を促し文字列を取得する。
コマンドラインから入力してもらった文字列を取得したい場合があります。以下のサンプルでは、コマンドラインから名前を入力してもらい、それを取得して表示します。
import java.io.*; public class ReadLine{ public static void main(String[] args){ try{ BufferedReader bf = new BufferedReader (new InputStreamReader(System.in)); System.out.print("Enter your name:"); String yourname = bf.readLine(); System.out.println("helo:" + yourname); } catch(Exception e){ e.printStackTrace(); } } }
2012年9月21日金曜日
Java プログラムでMySqlを操作する
以下のサイトを参照させてもらいました。
http://www.roseindia.net/jdbc/jdbc-mysql/index.shtml
以下はemployeeテーブルの内容を表示するJavaサンプルプログラムです。
http://www.roseindia.net/jdbc/jdbc-mysql/index.shtml
以下はemployeeテーブルの内容を表示するJavaサンプルプログラムです。
import java.sql.*; public class GetAllRows{ public static void main(String[] args) { System.out.println("Getting All Rows from a table!"); Connection con = null; String url = "jdbc:mysql://localhost:3306/"; String db = "employee_db"; String driver = "com.mysql.jdbc.Driver"; String user = "root"; String pass = "root"; try{ Class.forName(driver).newInstance(); con = DriverManager.getConnection(url+db, user, pass); try{ Statement st = con.createStatement(); ResultSet res = st.executeQuery("SELECT * FROM employee"); System.out.println("code: " + "\t" + "employee: "); while (res.next()) { int i = res.getInt("id"); String s = res.getString("employee"); System.out.println(i + "\t\t" + s); } con.close(); } catch (SQLException s){ System.out.println("SQL code does not execute."); } } catch (Exception e){ e.printStackTrace(); } } }
2012年9月18日火曜日
Java 時刻を表示
以下はサンプル
import java.util.Calendar; public class checktime{ public static void main(String[] args) { String Timedate = checkTime(); System.out.println(Timedate); } private static String checkTime(){ String modori; Calendar cal1 = Calendar.getInstance(); int year = cal1.get(Calendar.YEAR); int month = cal1.get(Calendar.MONTH) + 1; int day = cal1.get(Calendar.DATE); int hour = cal1.get(Calendar.HOUR_OF_DAY); int minute = cal1.get(Calendar.MINUTE); int second = cal1.get(Calendar.SECOND); StringBuffer dow = new StringBuffer(); switch (cal1.get(Calendar.DAY_OF_WEEK)) { case Calendar.SUNDAY: dow.append("日曜日"); break; case Calendar.MONDAY: dow.append("月曜日"); break; case Calendar.TUESDAY: dow.append("火曜日"); break; case Calendar.WEDNESDAY: dow.append("水曜日"); break; case Calendar.THURSDAY: dow.append("木曜日"); break; case Calendar.FRIDAY: dow.append("金曜日"); break; case Calendar.SATURDAY: dow.append("土曜日"); break; } modori =String.format("%04d/%02d/%02d%s%02d:%02d:%02d" ,year,month,day,dow,hour,minute,second); return modori; } }
2012年9月17日月曜日
Java でExcel ファイルを作成する。(JExcelApi)(2)
Java でExcel ファイルを作成するサンプルです。(動作は無保証です。)
先日の「Excelファイルを編集する」と同様にJExcelApiを使用しています。
import java.io.FileOutputStream; import java.io.OutputStream; import java.util.Locale; import jxl.Workbook; import jxl.WorkbookSettings; import jxl.write.Label; //import jxl.write.Number; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; public class ExcelWrite { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub try{ WorkbookSettings settings = new WorkbookSettings(); settings.setLocale(new Locale("ja", "JP")); settings.setEncoding("Windows-31J"); OutputStream os = new FileOutputStream("output.xls"); WritableWorkbook workbook = Workbook.createWorkbook(os, settings); // シートの新規作成 WritableSheet sheet = workbook.createSheet("sheet1", 0); // ※ここからシートの書き込み処理を記述する Label label = new Label(0, 0, "サンプル"); sheet.addCell(label); // 終了処理 workbook.write(); workbook.close(); }catch(Exception ex){ System.err.println("失敗しました.:" + ex.toString()); }finally{ System.out.println("終了しました.:"); ; } } }
Java でExcel ファイルを作成する。(JExcelApi)
Java でExcel ファイルを作成するサンプルです。(動作は無保証です。)
先日の「Excelファイルを編集する」と同様にJExcelApiを使用しています。
import java.io.File; import java.io.FileOutputStream; import java.io.OutputStream; import java.util.Locale; import jxl.Workbook; import jxl.WorkbookSettings; import jxl.write.Label; import jxl.write.Number; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; /* import java.io.File; import java.util.Date; */ import jxl.*; import jxl.write.*; public class ExcelWrite { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub WritableWorkbook workbook=null; String outputFileName = "output.xls"; try{ workbook = Workbook.createWorkbook(new File(outputFileName)); WritableSheet sheet = workbook.createSheet("Sheet1", 0); // WritableSheet sheet = workbook.createSheet("First Sheet", 0); Label label = new Label(0, 2, "サンプル"); sheet.addCell(label); Number number = new Number(3, 4,12800); sheet.addCell(number); workbook.write(); workbook.close(); }catch(Exception ex){ System.err.println("失敗しました.:" + ex.toString()); }finally{ System.out.println("終了しました.:"); ; } } }
2012年9月15日土曜日
Java でファイルにappendする
以下は既にあるファイルの最後に行を追加するサンプルです。
import java.io.File; import java.io.FileWriter; import java.io.IOException; class FileAppend{ public static void main(String args[]){ try{ File file = new File("test.txt"); FileWriter filewriter = new FileWriter(file, true); filewriter.write("この行を追加します1\n"); filewriter.write("この行も追加します2\n"); filewriter.close(); }catch(IOException e){ System.out.println(e); } } }
2012年9月14日金曜日
Ubuntu 12.04 でcrontab の設定
以下のように入力して、ファイルを編集する。
crontab -e
以下は java -jar /home/excelwrite3.jar > /dev/null 2>&1 というコマンドを月曜日~金曜日、8時~15時台、5分おきに実行する場合の例です。
例) */5 8-15 * * 1-5 java -jar /home/excelwrite3.jar > /dev/null 2>&1
crontab -e
以下は java -jar /home/excelwrite3.jar > /dev/null 2>&1 というコマンドを月曜日~金曜日、8時~15時台、5分おきに実行する場合の例です。
例) */5 8-15 * * 1-5 java -jar /home/excelwrite3.jar > /dev/null 2>&1
2012年9月13日木曜日
Java でファイルを1行づつ読み込み配列に格納する
サンプルプログラム(以下のサンプルでは、zzz.txtというファイルの中身を1行づつ読み出してstrarray[]という配列に格納しています。)
import java.io.BufferedReader; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; public class FileRead { public static void main(String[] args) { String[] strarray = new String[1000]; int i = 0; try{ File file = new File("zzz.txt"); BufferedReader br = new BufferedReader(new FileReader(file)); String str= null; i=0; while((str = br.readLine()) != null){ System.out.println(str); strarray[i]=str; i = i +1; } br.close(); }catch(FileNotFoundException e){ System.out.println(e); }catch(IOException e){ System.out.println(e); } } }
2012年9月12日水曜日
Java でExcelファイルを編集する。(JExcelApi)
JavaでExcelファイルを弄る方法としてPOIを使用する方法もあるようですがこの例ではJExcelApiを使用します。JExcelApiはhttp://sourceforge.net/projects/jexcelapi/files/ からダウンロードできます。(ダウンロードしたファイルを解凍すると、jxl.jarというファイルがありますので、それをクラスパスに通します。)
参考にさせていただいたサイト
http://homepage3.nifty.com/anny/index.html
http://vapour.s22.xrea.com/javadojo/index.php?Java%A4%C7Excel
http://jexcelapi.sourceforge.net/
サンプル
参考にさせていただいたサイト
http://homepage3.nifty.com/anny/index.html
http://vapour.s22.xrea.com/javadojo/index.php?Java%A4%C7Excel
http://jexcelapi.sourceforge.net/
サンプル
import java.io.File; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import jxl.Workbook; import jxl.WorkbookSettings; import jxl.read.biff.BiffException; import jxl.write.Label; import jxl.write.Number; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; import jxl.write.WriteException; public class ExcelEdit { public static void main(String[] args) { int line = 8; Workbook workbook = null; try { WorkbookSettings ws = new WorkbookSettings(); ws.setGCDisabled(true); workbook = Workbook.getWorkbook(new File("output.xls"), ws); } catch (BiffException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { if (workbook != null) { ; } } File outputFile= new File("output.xls"); WritableWorkbook workbook1=null; try { System.out.println(outputFile + "ブックを新規作成"); workbook1 = Workbook.createWorkbook(outputFile,workbook); if (workbook1 == null) { System.err.println(outputFile + "ブック作成に失敗"); } } catch (IOException ex) { System.err.println(ex.toString()); } WritableSheet sheet = workbook1.getSheet(0); if (sheet == null) { System.err.println(outputFile + "シート設定に失敗"); } Label label = new Label(1, line, "サンプル"); try { sheet.addCell(label); } catch (WriteException ex) { System.err.println("セルの書き込みに失敗" + ex.toString()); } Number number = new Number(0, line, 12800); try { sheet.addCell(number); } catch (WriteException ex) { System.err.println("line セルの書き込みに失敗" + ex.toString()); } System.out.println("日付セルを新規作成"); SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd"); String dateStr = format.format(new Date()); Label label2 = new Label(2, line, dateStr); try { sheet.addCell(label2); } catch (WriteException ex) { System.err.println("セルの書き込みに失敗" + ex.toString()); } try { workbook1.write(); } catch (IOException ex) { if (workbook1 != null) { System.err.println(outputFile + "ブックの書き込みに失敗" + ex.toString()); } } try { workbook1.close(); workbook.close(); } catch (Exception ex) { System.err.println(outputFile + "ブックのクローズに失敗" + ex.toString()); } } }
2012年9月2日日曜日
JAVA jsoup で株価を取得する
JAVAのプログラムで、Yahooのサイトから株価を取得してみました。jsoupを使用しました。以下のサンプルプログラムでは、東京電力(9501)の株価を取得しています。jsoupはhttp://jsoup.org/download からダウンロードして使用しました。
サンプルプログラム
--------------------------------------
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.io.IOException;
public class GetPrice {
public static void main(String[] args) throws IOException {
String url = "http://stocks.finance.yahoo.co.jp/stocks/detail/?code=9501.T";
Document doc = Jsoup.connect(url).get();
Elements stoksPrices=doc.select("td[class=stoksPrice]");
for (Element stoksPrice : stoksPrices){
System.out.println(stoksPrice.text());
}
}
}
2012年7月27日金曜日
Podcast をオンラインストレージに配置する
ECC英会話Podcast をオンラインストレージに配置してみました。
26 lesson9
https://www.box.com/s/0ea1d50d5dead2b70d38
26 lesson10
https://www.box.com/s/309e689003c8e3a766a8
27 lesson1
https://www.box.com/s/a18a2d70d4ef542d5155
27 lesson2
https://www.box.com/s/e512a3e26a39f3a91b8b
27 lesson3
https://www.box.com/s/242ad275cbcb5f834c5f
27 lesson4
https://www.box.com/s/c32b678739c698d92779
27 lesson5
https://www.box.com/s/73058cb3787434b317fa
27 lesson6
https://www.box.com/s/fa31be18328acd0ab35a
27 lesson7
https://www.box.com/s/03f80cbb813b0c2180a2
27 lesson8
https://www.box.com/s/177733dc8cb6053a3f8e
27 lesson9
https://www.box.com/s/1ad3efe092f36b85ac17
27 lesson10
https://www.box.com/s/3d78630bf26a8868f28b
27 lesson11
https://www.box.com/s/98c4c9c74f137dd4ad06
27 lesson12
https://www.box.com/s/f74ff054d487a8aa9d7d
28 lesson6
https://www.box.com/s/f9c5657701ab3a7a9a06
28 lesson7
https://www.box.com/files/0/f/0/1/f_2412683144#/files/0/f/0/1/f_2412683144
2012年5月31日木曜日
Ubuntu のApache のcgi-bin の配置場所
Ubuntu のApache のcgi-bin の配置場所は、usr/lib/cgi-bin のようです。/var/www の配下にcgi-ginというディレクトリを作成していたがどうもうまくいかないと思っていました。以下は、Mysqlサーバに接続してテーブルの中身を表示するサンプルのcgiプログラム(rubyで記述)です。
#!/usr/bin/ruby require "cgi" require "mysql" no = 9 sql = "select id, pass ,comment from pass " m = Mysql.new('localhost','user_name','password','database_name') res = m.query(sql) print "Content-type: text/html\n\n"
print <<EOF <html> <body> Gaitou Kensuu #{res.num_rows} Ken<br> EOF i = 0 no_a = [0] name_a = [0] res.each do |a| no_a[i] = a[0] name_a[i] = a[1] puts a[0]+" =>"+a[1]+"<br>" i += 1 end print <<EOF </body> </html> EOF m.close
2012年5月25日金曜日
PHP でファイルの中身を表示するには
以下のサンプルでは、ファイルの中身を1行づつ配列に格納した後に、行頭に行番号をつけて表示します。
<?php function showLines($f){ $lines = @file($f) or exit('*can not read file'); for($i = 0; $i < count($lines); $i++) echo ($i+1) . ": " . $lines[$i]; } echo "ファイル名を入力input file name:"; $a = trim(fgets(STDIN)); showLines($a); ?>
以下のサンプルでは、ファイルを読み込んで表示します。
<?phpecho "input file name:";$a = trim(fgets(STDIN));readfile($a);?>
PHP でファイルの属性を得る
ファイル名を入力すると、ファイルのサイズ、更新日付などを表示します。
<?php function showInfo($path){ echo "Path: " . realpath($path) . "\n"; echo "Type: " . filetype($path) . "\nSize: " . filesize($path) . "\n"; echo "Modified: " . date('Y-m-d H:i:s',filemtime($path)); echo "\nAccessed: " .date('Y-m-d H:i:s', fileatime($path)); } echo "input file name:"; $a = trim(fgets(STDIN)); showInfo($a); ?>
2012年5月23日水曜日
PHP でファイルに保存する
以下の例では、標準入力から読み込んだ行をsave.txtというファイルに追記しています。
<?php
echo "input text:";
$a = trim(fgets(STDIN));
saveText($a);
echo "\n";
readfile('save.txt');
function saveText($str){
$f = @fopen('save.txt','ab') or exit('fail to access to file.');
fputs($f,$str . "\n");
fclose($f);
}
?>
PHPで乱数を発生させる
<?php /* 乱数を得るには */ echo "整数を入力:"; $a = trim(fgets(STDIN)); for($i = 0;$i < 100;$i++) echo rand(0,$a) . " "; ?>
------------------------------------------------------------------------
その他のPHPの技はhttp://chaos-fractal.blogspot.jp/2011/12/php.html
2012年5月17日木曜日
ruby でExcel を読み書き
こちらでも記載しています。
●Excelから読み込む場合のサンプル1
●Excelから読み込む場合のサンプル2
●Excelへ書き込む場合のサンプル1
●Excelへ書き込む場合のサンプル2
●Excelへ書き込む場合のサンプル3
●Excelから読み込む場合のサンプル1
require 'rubygems' require 'spreadsheet' xls = Spreadsheet.open('tests.xls', 'rb') #Excelファイルの読み込み sheet = xls.worksheet(0) #0番目つまり1番始めのsheetを読み込む #読み込みの開始が'0'から始まる。 print sheet[0,1] #実際のExcelでは、1行目の2列目の値を読み込み print "\n" #行単位で読み込む事も出来ます。 row = sheet.row(2) #3行目のデータを読み込み print row[2] #3行目の3列目のデータを読み込み print "\n"
●Excelから読み込む場合のサンプル2
require 'rubygems' require 'parseexcel' #Open the excel file passed in from the commandline workbook = Spreadsheet::ParseExcel.parse(ARGV[0]) #Get the first worksheet worksheet = workbook.worksheet(0) #cycle over every row j=0 worksheet.each { |row| # j=0 i=0 if row != nil #cycle over each cell in this row if it's not an empty row row.each { |cell| if cell != nil #Get the contents of the cell as a string #contents = cell.to_s('latin1') contents = cell.to_s('utf-8') puts "Row: #{j} Cell: #{i}> #{contents}" end i = i+1 } end j = j+1 }
●Excelへ書き込む場合のサンプル1
$KCODE = 'utf-8' require 'rubygems' require 'spreadsheet' Spreadsheet.client_encoding = 'UTF-8' workbook = Spreadsheet::Workbook.new worksheet = workbook.create_worksheet(:name => 'test1') # worksheet[行番号,列番号] で書き込める worksheet[0, 0] = "hello" # 行を纏めて書き込むには,worksheet.row(行番号).replaceにArrayを叩き込む worksheet.row(1).replace ["Matz", "Guido", "Larry"] # セル内改行もできます worksheet[2, 0] = "日本語\nです" workbook.write('tests.xls')
●Excelへ書き込む場合のサンプル2
require 'rubygems' require 'axlsx' #// A Simple Workbook p = Axlsx::Package.new p.workbook.add_worksheet do |sheet| sheet.add_row ["First", "Second", "Third"] sheet.add_row [1, 2, 3] end p.serialize("example1.xlsx")
●Excelへ書き込む場合のサンプル3
require 'rubygems' require 'axlsx' p = Axlsx::Package.new wb = p.workbook black_cell = wb.styles.add_style :bg_color => "FF000000", :fg_color => "FFFFFFFF", :sz=>14, :alignment => { :horizontal=> :center } blue_cell = wb.styles.add_style :bg_color => "FF0000FF", :fg_color => "FFFFFFFF", :sz=>14, :alignment => { :horizontal=> :center } wb.add_worksheet do |sheet| sheet.add_row ["Text Autowidth", "Second", "Third"], :style => [black_cell, blue_cell, black_cell] sheet.add_row [1, 2, 3], :style => Axlsx::STYLE_THIN_BORDER end p.serialize("example4.xlsx")
2012年5月9日水曜日
Perl で ファイルの読み込み時にエラーを出すには
Perl でファイルの読み込み時にエラーが出たときにメッセージを出力するには
例1
例2
例1
$filename = "data2.txt"; if( ! open FH , $filename ){ print $filename . " open error\n"; }
例2
$filename = "./data2.dat"; open( FH , "$filename" ) || die "Error: $filename $!\n";
2012年5月8日火曜日
Ubuntu 12.04 で Avira AntiVir (挫折)
Avira antivir について
Ubuntu 12.04 上で動作する無料のウイルスチェッカAvira-AntiVirをインストールしようとしたが、dasukoFSのインストールができないので、挫折してしまいました。
antivir-workstation-pers-3.1.3.5-0
antivir-workstation-pers-3.0.2-5
Ubuntu 12.04 上で動作する無料のウイルスチェッカAvira-AntiVirをインストールしようとしたが、dasukoFSのインストールができないので、挫折してしまいました。
antivir-workstation-pers-3.1.3.5-0
- avupdate-guard
- avscan
- dazuko がインストールされていなくてもオンデマンドスキャンだけならできる。
antivir-workstation-pers-3.0.2-5
- sudo /usr/lib/AntiVir/avupdate --product=Guard ( no valid license )
- dazukoFS 3.14 のインストールで挫折
2012年5月5日土曜日
Ubuntu でGRUBが消えてしまった
私は、Ubuntu12.04 と WindowsXPのデュアルブートで使用している。PCを起動するとGRUBメニューがでてきて、Ubuntuを起動するかWindowsを起動するか選択できるようになっている。CD-ROMを使用してWindowsXPのリカバリを行なおうとしたところ、その後このGRUBメニューが出てこなくなってしまった。PCを起動すると、すぐにWindowsの起動の画面になってしまい、Ubuntuを起動することができなくなってしまったーと思ってインターネットで調べたところ、対処法がいろいろ書かれてあったので、それにしたがってGRUBメニューを復旧したので、その方法を簡単にメモしておく。
注意事項 今回は、SUPER GRUB2 DISK を使用したが、別の方法で起動することもできる。
- 以下のサイトにしたがって、SUPER GRUB2 DISKをダウンロードして、CD-ROMに焼く。 GRUB2が壊れて起動できない時に、らくちんに修復する!転ばぬ先の「Super Grub Disk」
- 上記で作成したCD-ROMを使ってPCを起動させる。起動できるOSの一覧を表示させて、Ubuntu12.04に相当するのを選択するとUbuntuが起動した。
- Ubuntuが起動したところで、以下のコマンドを入力する。/dev/sda の部分は環境によって異なる可能性があり。(sudo fdisk -l で調べる)
sudo /usr/sbin/grub-install /dev/sda
注意事項 今回は、SUPER GRUB2 DISK を使用したが、別の方法で起動することもできる。
- LiveCDを入れて起動する途中、黒い画面から赤紫色の画面になったところで,F6キーを押してメニュー表示させる。F6キーを押すと、起動オプションを変更することができるようになるため、「boot=casper」となっているところを「root=/dev/sda5」などに変更してEnterすると、起動する。(sda5の部分は使用環境によって異なる。)私の環境では、このやり方で起動すると、なぜかマウスカーソルが動かなくなってしまった。理由は不明。
- PuppyLinuxなどのLiveCDでは、起動時に、GRUB4DOSなどを選択することができるようになっている。これを使ってGRUBのコマンドを入力して起動させる。以下は、sda5にUbuntuが入っている場合の入力例
GRUB>root (hd,4)
GRUB>kernel /boot/vmlinuz-3.2.0-24-generic root=/dev/sda5
GRUB>initrd /boot/initrd.img-3.2.0-24-generic
GRUB>boot
Ubuntu 12.04 で BitDefender をインストールした
インストールのやり方は以下のサイトを参照
List of Free Antivirus Software for Ubuntu 12.04
使用法
bdscan ←コマンドラインからのスキャン
bdgui ←GUIによる操作
手順書は以下
Docs
List of Free Antivirus Software for Ubuntu 12.04
- 以下のコマンドによりダウロードしてくる。
wget http://download.bitdefender.com/SMB/Workstation_Security_and_Management/BitDefender_Antivirus_Scanner_for_Unices/Unix/Current/EN_FR_BR_RO/Linux/BitDefender-Antivirus-Scanner-7.6-4.linux-gcc4x.i586.deb.run - ダウンロードしたファイルを実行可能にする。
sudo chmod +x BitDefender-Antivirus-Scanner-7.6-4.linux-gcc4x.i586.deb.run - 実行してインストールを行う。
sudo ./BitDefender-Antivirus-Scanner-7.6-4.linux-gcc4x.i586.deb.run - BitDefenderのサイトより1年間のフリーラインセンスを取得する。
ScannerLicense
使用法
bdscan ←コマンドラインからのスキャン
bdgui ←GUIによる操作
手順書は以下
Docs
Ubuntu 12.04 で AVGをインストール
Ubuntu 12.04 で動作する無料のウイルススキャナAVGをインストールしました。ダウンロードは以下のサイトから。
AVG ANTI-VIRUS FREE EDITION FOR LINUX 2011
やり方は以下を参照
AVG Anti-Virus Free Edition for Linuxとは?
AVG ANTI-VIRUS FREE EDITION FOR LINUX 2011
やり方は以下を参照
AVG Anti-Virus Free Edition for Linuxとは?
- 表示される一覧の中からAVG Free Edition for Linux を選択。
- 拡張子がdebのファイル(avg2012flx-r1786-a4748.i386.deb)がダウンロードされるので以下のように入力してインストールを実行。
dpkg -i avg2012flx-r1786-a4748.i386.deb
注意!.debファイルをダブルクリックするとソフトウエアセンターが自動的に起動して、そこからもインストールできるかのようだが、私の環境では「ハンドルできないエラーが発生しました」のエラーメッセージがでてできなかった。 - その後,Ubuntuを再起動。
- sudo avgupdate ←データベースをアップデート
- avgscan /home/hoge ←スキャン
2012年5月3日木曜日
Ubuntu 12.04 で Avast をインストールした。
Ubuntuで使用できるウイルスチェッカとして、Avastをインストールしました。
やりかた
1.以下のサイトから、.debファイルをダウンロードします。(avast4workstation_1.3.0-2_i386.deb)またregistration form というところを押してライセンスキーを取得しておきます。ライセンスキーはメールで届きます。
linux-home-edition
http://forum.avast.com/index.php?topic=91145.0
2.ダウンロードしたavast4workstation_1.3.0-2_i386.debファイルをダブルクリックします。するとUbuntuソフトウエアセンターが起動します。
3.インストールを行ないます。(「パッケージの品質が悪いです」というメッセージが表示されましたが「無視してインストールする」を押しました。)
4.コマンドラインから、avastgui と実行するとライセンスキーの入力を求められるので、取得したライセンスキーをコピーペーストします。
私の環境では、update database ボタンを押すとエラーが発生しました。以下のサイトを参考にして対処を行ないました。
avastのLinux版のアップデートエラーを直す
Ubuntu 日本語フォーラム
Ubuntu 日本語フォーラム
やりかた
1.以下のサイトから、.debファイルをダウンロードします。(avast4workstation_1.3.0-2_i386.deb)またregistration form というところを押してライセンスキーを取得しておきます。ライセンスキーはメールで届きます。
linux-home-edition
http://forum.avast.com/index.php?topic=91145.0
2.ダウンロードしたavast4workstation_1.3.0-2_i386.debファイルをダブルクリックします。するとUbuntuソフトウエアセンターが起動します。
3.インストールを行ないます。(「パッケージの品質が悪いです」というメッセージが表示されましたが「無視してインストールする」を押しました。)
4.コマンドラインから、avastgui と実行するとライセンスキーの入力を求められるので、取得したライセンスキーをコピーペーストします。
私の環境では、update database ボタンを押すとエラーが発生しました。以下のサイトを参考にして対処を行ないました。
avastのLinux版のアップデートエラーを直す
Ubuntu 日本語フォーラム
Ubuntu 日本語フォーラム
登録:
投稿 (Atom)