using System;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
//クラス保存出来るように、属性を追加
[Serializable()]
public class Hoge
{
public DateTime d;
}
public class SaveLoad
{
public const string FILE_NAME = "hoge.txt";
public static void InitFile()
{
if(!File.Exists(FILE_NAME))
{
Hoge[] h = new Hoge[1];
h[0] = new Hoge();
h[0].d = DateTime.Now;
Save(h);
}
}
public static void Save(Hoge[] h)
{
FileStream fs = new FileStream(FILE_NAME,FileMode.Create,FileAccess.Write);
BinaryFormatter b = new BinaryFormatter();
b.Serialize(fs,h);
fs.Close();
}
public static Hoge[] Load()
{
BinaryFormatter b = new BinaryFormatter();
FileStream fs = new FileStream(FILE_NAME, FileMode.OpenOrCreate, FileAccess.Read);
Hoge[] loadFile;
loadFile = (Hoge[])b.Deserialize(fs);
fs.Close();
return loadFile;
}
public static void Main()
{
Hoge[] h;
//ファイルがない場合は、ファイルを作成
SaveLoad.InitFile();
//ファイルのロード
h = SaveLoad.Load();
System.Console.WriteLine("前回起動時刻は"+ h[0].d.ToString("yyyy/MM/dd HH:mm:ss")+"です。");
//終了時刻をセーブ
h[0].d = DateTime.Now;
SaveLoad.Save(h);
}
2016年6月11日土曜日
.net シリアライズ機能を使用してクラスの保存
シリアライズ機能を使用する時のひな型
2016年5月1日日曜日
postgresql で 列にコメントを表示する
1.表を作成する
CREATE TABLE hoge (hoge int);
2.列にコメントをつける
COMMENT ON COLUMN hoge.hoge IS 'ほげ';
3.列のコメントを表示する
\d+ hoge
テーブル "public.hoge"
列 | 型 | 修飾語 | ストレージ | 対象統計情報 | 説明
------+---------+--------+------------+--------------+------
hoge | integer | | plain | | ほげ
2016年4月10日日曜日
postgresql で 3番目に大きい数を取得する
select num
from hoge
order by num desc -- numを降順に並べる
limit 1 -- 条件に合うnumを一つだけ取得する
offset 3; -- 条件に合うnumを3番目から取得する
from hoge
order by num desc -- numを降順に並べる
limit 1 -- 条件に合うnumを一つだけ取得する
offset 3; -- 条件に合うnumを3番目から取得する
2016年3月26日土曜日
2016年3月23日水曜日
PostgresqlでTCP・IP接続をできるようにする
Postgresqlは設定を変えないと外部から接続できないのでメモ
(Postgresqlはdebian8.2)
1. postgresql.confの設定を変える
/etc/postgresql/9.4/main/postgresql.conf
を開いて、
listen_addresseas = 'localhost'
→
listen_addresseas = '*'
に変更する
2.pg_hba.confの設定を変える
/etc/postgresql/9.4/main/pg_hba.conf
を開いて、
host all all 192.168.1.0/24 md5
を追加する。
(192.168.1.0/24は、IPによって変える)
3.違うパソコンからpsqlでアクセスしてみる
psql -h 192.168.1.17 dbName
(192.168.1.17は、IPによって変える)
で接続できるか確認する。
(Postgresqlはdebian8.2)
1. postgresql.confの設定を変える
/etc/postgresql/9.4/main/postgresql.conf
を開いて、
listen_addresseas = 'localhost'
→
listen_addresseas = '*'
に変更する
2.pg_hba.confの設定を変える
/etc/postgresql/9.4/main/pg_hba.conf
を開いて、
host all all 192.168.1.0/24 md5
を追加する。
(192.168.1.0/24は、IPによって変える)
3.違うパソコンからpsqlでアクセスしてみる
psql -h 192.168.1.17 dbName
(192.168.1.17は、IPによって変える)
で接続できるか確認する。
2016年3月13日日曜日
Visual Studio キーバインドメモ
編集
| Ctrl+K,Ctrl+C | 選択範囲をコメント |
| Ctrl+K,Ctrl+U | 選択範囲をコメントアウト |
| Ctrl+K,Ctrl+F | 選択範囲のフォーマット |
| Ctrl+r,Ctrl+r | 名前の変更 |
| Alt+Shiftを押しながら↑↓←→ | 矩形領域の選択 |
| Ctrl+M,Ctrl+S | 現在の領域を折りたたむ |
| Ctrl+M,Ctrl+E | 現在の領域を展開 |
| Ctrl+M,Ctrl+O | 定義を折りたたむ |
| Shift+Ctrl+B | ソリューションのビルド |
C#でWebBrowser
今まで全然使ったことがなかったけれど、
.NetにはWebBrowserといクラスがあって、
Form内にブラウザを作れる。
これが使えると、どこかのサイトにログインした後に
プログラム的に結果をとってくるとかが簡単にできて便利そう。
このプログラムを実行するだけだと、スクリプトエラーとなるので、
IE9エンジンをIEコンポーネントブラウザで使う
を参考に、レジストリーキーを更新する。
using System;
using System.Drawing;
using System.Windows.Forms;
public class WebBrowserTest : Form
{
WebBrowser webBrowser1 ;
public WebBrowserTest()
{
//パネルにWebブラウザをadd
this.webBrowser1 = new System.Windows.Forms.WebBrowser();
this.webBrowser1.Location = new System.Drawing.Point(-3, 37);
this.webBrowser1.MinimumSize = new System.Drawing.Size(20, 20);
this.webBrowser1.Name = "webBrowser1";
this.webBrowser1.Size = new System.Drawing.Size(783, 544);
this.webBrowser1.TabIndex = 0;
this.webBrowser1.Dock = DockStyle.Fill;
Uri uri = new Uri("http://www.yahoo.co.jp");
webBrowser1.Url = uri;
this.Controls.Add(this.webBrowser1);
}
[STAThread]
public static void Main()
{
WebBrowserTest test = new WebBrowserTest();
test.Size = new Size(1000,1000);
Application.Run(test);
}
}
登録:
投稿 (Atom)