スポンサーリンク
Javaの豆知識 「ファイル作成処理」 [備忘録]
import java.io.IOException;
/**
* @author Shu_mei
*
*/
public class UploadObjectTest {
public static void main(String[] args) {
String text = new String("友の死\n寺田屋大騒動");
UploadObject upload = new UploadObject("C:/temp/", ".txt", text.getBytes());
try {
upload.FileOut("test");
} catch (IOException e) {
e.printStackTrace();
}
}
}
import java.io.FileOutputStream;
import java.io.IOException;
/**
* @author shu_mei
* ファイル作成クラス
*/
public class UploadObject {
private byte uploadData_[];
private String strContentType_;
private String strDirectoryName_;
public UploadObject(String strDirectoryName, String strContentType, byte uploadData[]) {
strContentType_ = strContentType;
strDirectoryName_ = strDirectoryName;
uploadData_ = uploadData;
}
public void FileOut(String strFileName) throws IOException {
FileOutputStream fos = null;
try {
fos = new FileOutputStream(strDirectoryName_.concat(strFileName).concat(strContentType_));
fos.write(uploadData_);
} catch (Exception e) {
throw new IOException(e.getMessage());
} finally {
if (fos != null) {
fos.flush();
fos.close();
}
}
}
}
Javaの豆知識 「jarファイルのVIEW」 [備忘録]
jar tvf ファイル名
例:jar tvf test.jar
Javaの豆知識 「jarファイルの解凍」 [備忘録]
jar xvf ファイル名
例:jar xvf test.jar
Javaの豆知識 「Javaの日付変換処理」 [備忘録]
/**
* Date型に変換
* @param date 文字列(例:20050131)
* @return Date 指定の書式に変換された日付
*/
private Date _dateFormat(String date){
Date d;
try {
d = new SimpleDateFormat("yyyyMMdd").parse(date);
} catch (ParseException e) {
return null;
}
return d;
}
/**
* String型に変換
* @param target Date型
* @return String 指定の書式に変換された日付の文字列
*/
public String _stringFormat(java.util.Date target) {
String pattern = "yyyyMMdd";
String result = new SimpleDateFormat(pattern).format(target);
return result;
}
Javaの豆知識 「Javaの日付計算」 [備忘録]
Javaの日付の計算は、ミリ秒に換算して行います。
/**
* 日付計算
* @param hnnyYmd
* @param hkwYmd
* @param chsiYmd
* @return String 計算結果
*/
private String _calcDate(String hnnyYmd, String hkwYmd, String chsiYmd){
// Date型に変換
Date hnnyDate = _dateFormat(hnnyYmd);
Date hkwDate = _dateFormat(hkwYmd);
Date chsiDate = _dateFormat(chsiYmd);
if(hnnyDate==null || hkwDate==null || chsiDate==null){
return "";
}
Calendar hnnyCal = Calendar.getInstance();
hnnyCal.setTime(hnnyDate);
Calendar hkwCal = Calendar.getInstance();
hkwCal.setTime(hkwDate);
Calendar chsiCal = Calendar.getInstance();
chsiCal.setTime(chsiDate);
// 搬入日と引渡日の差をミリ秒で取得
long ms = hkwCal.getTimeInMillis() - hnnyCal.getTimeInMillis();
// 日数に換算
int day = (int)(ms/1000/60/60/24);
// 調整日に加える
chsiCal.add(Calendar.DATE, day);
return new SimpleDateFormat("yyyyMMdd").format(chsiCal.getTime());
}
SQLのテクニック 「バインド変数の値」 [備忘録]
select
品名コード品名
from 品名マスタ
where 0=0 AND ((:リスト = '1')
OR (:リスト = '2' AND 区分 = 'K')
OR (:リスト = '3' AND 区分 = 'L'))
SQLパフォーマンス 「NOT EXISTS / NOT IN構文のパフォーマンスについて」 [備忘録]
実行計画を見ると、NOT EXISTS構文では相関副問い合わせにINDEXを使用しているのに対し、 NOT IN構文では副問い合わせにフルテーブルスキャンを行っている。
その影響を受け、NOT IN構文は、NOT EXISTS構文の場合に比べアクセスデータ量が20倍以上になっている。実行時間はおよそ200倍。よってこの場合はNOT EXISTS構文を使用するべきである。また実現性の面で見ても、十分耐えられると判断できる。
もし他の場面でNOT EXISTS構文を使用する場合は、相関副問い合わせ内のテーブルにINDEXを作成することにより、その処理時間を大幅に削減できる。
dynabook V9/W14LDEWのTips 「内蔵無線LANの交換」 [備忘録]
PCカードを買うより、手軽ですし安いです。せっかくの内蔵タイプなので、活用して下さい。
1.内蔵無線LANを購入します。私は、下記の商品を秋葉原のDOSPARAで3,790円で購入しました。
インテル(R) PRO/Wireless 2200BG ネットワーク・コネクション (802.11b/g デュアルモード)
2.本体の電源を落とし、本体がAC電源で繋がれていたら外して下さい。次に身体から静電気を逃がす為に金属に触って下さい。
3.本体背面の無線ON/OFFスイッチ付近に『Wi-Fi』と書かれたステッカーの貼られたカバーがネジ一本で止まっていますので、それを外します。
4.すると標準の2100のカードが見えますので、アンテナ端子のシールを取りアンテナを2本抜いて下さい。アンテナは、真上から抜きます。間違っても引っ張って抜くとは考えないで下さい。
5.その後、メモリのようにPCIカードを外し2200BGと入れ替えます。
6.あとは外したのと逆の手順でアンテナを挿せばOKです。
7.起動すると、ウィザードが起動しますので付属のドライバCDを入れて、ドライバをインストールします。起動時のcentrinoのロゴがpentium-Mのロゴになってしまっていますが、これはそういう仕様です。むしろ正しく認識していると考えて下さい。
8.ネットワークの設定をし直します。SSIDの設定やWEP等セキュリティを設定していたら、再設定して下さい。
9.次にドライバの更新をします。下記のHPにSonyのVaio用の2200BGのWireless LAN Driverのアップデートがありますので、ダウンロードします。通信速度が安定する上に、詳細設定が日本語表記になるので使いやすくなります。Vaio用に公開されてますが、問題ありません。
http://vcl.vaio.sony.co.jp/download/PK-000414-00.html
WinCVSのTips 「CVSコマンド」 [備忘録]
CVSファイルの削除
1.cvs remove ファイル名
例:cvs remove test.java
2.cvs commit ファイル名
例:cvs commit test.java
CVSファイルの更新
1.cvs update -r ヴァージョン ファイル名
例:cvs update -r 1.2 test.java
CVSファイルの新規取得
1.cvs update -d
CVSファイルのコミット
1.cvs commit -f -R
コマンドの意味
* fは、ファイルが更新されていなくても、強制的に更新する。
* Rは、カレントディレクトリだけでなく、サブディレクトリも更新する。
CVSのTagの取消
1.cvs -q update -A ファイル名
例:cvs -q update -A test.java
WinCVSのTips 「CVS NTをインストールする」 [備忘録]
1. http://www.cvsnt.com/からCVS NTを入手する。
2. 入手したCVS NTを解凍し、適当なフォルダにコピーする。
(例: C:\CVSNT)
3. CVSインストールフォルダにパスを通す
4. CVSの環境変数を設定する。「CVSROOT」は必ず設定しておく。例 : CVSROOT=C:\CVSNT
5. レポジトリを作成する CVSNTの設定のRepositoriesのタブのValid Repository RootsにC:/CVSNTを追加(Add)する。
AdvancedタブのSupport ntserver protocolとImpersonation enabledにチェックを入れ、Use local users instead of domainのチェックを外す。
CVS server port 2401 Lock Server Port 2402
と設定する。
以上
スポンサーリンク