2006年10月05日

JAVA SWT メモ01(リスト)

         list = new List(group2, SWT.MULTI|SWT.BORDER|SWT.V_SCROLL);
        list.setBounds(new org.eclipse.swt.graphics.Rectangle(37,154,193,50));  // Generated
        list.add("Item1");
        list.add("Item2");
        list.add("Item3");
        list.addSelectionListener(new org.eclipse.swt.events.SelectionAdapter() {
            public void widgetSelected(org.eclipse.swt.events.SelectionEvent e) {
                System.out.println("widgetSelected()"); // TODO Auto-generated Event stub widgetSelected()
                String[] items = list.getSelection();
                
                for(int i = 0;i < items.length;i++){
                    System.out.println(items[i]);
                }
            }
        });
posted by morimori at 18:11| 宮城 曇り| Comment(42) | TrackBack(8) | 【JAVA】いろいろ | このブログの読者になる | 更新情報をチェックする

2006年09月15日

文字化けるす

記号:SJIS:Unicode:JIS
―:\u815c:\u2015:\u2014
〜:\u8160:\uff5e:\u301c
‖:\u8161:\u2225:\u2016
−:\u817c:\uff0d:\u2212
¢:\u8191:\uffe0:\u00a2
£:\u8192:\uffe1:\u00a3
¬:\u81ca:\uffe2:\u00ac

 
javaでこいつらに悩まされました
posted by morimori at 18:42| 宮城 晴れ| Comment(0) | TrackBack(0) | 【JAVA】いろいろ | このブログの読者になる | 更新情報をチェックする

eclipseの外部jarを読み込ませる

eclipseでlib以下に入っているもの。

外部jarをエクスポートしたつもりでも
「java.lang.NoClassDefFoundError:」のままである

が、しか〜し!

MANIFEST.MFに
外部jarの情報(パス)を書き込み、指定の場所にその外部jarを置く。


MANIFEST.MFの書き方は下記のとおり
(※実際は全て半角のみで区切ってある長い1行)
(※Class-Pathに指定したパスは、エクスポートしたjarからの相対パスです)

MANIFEST.MF----------------

Manifest-Version: 1.0
Main-Class: Login
Class-Path: ./ ./jcommon-1.0.0.jar ./jfreechart-1.0.1.jar ./junit.jar ./poi-2.5.1-final-20040804.jar ./poi-contrib-2.5.1-final-20040804.jar ./poi-scratchpad-2.5.1-final-20040804.jar ./swt.jar ./mysql-connector-java-3.0.17-ga-bin.jar
Created-By: Ant 1.3

 

たとえば、eclipse上で(外部jarを利用して)動いていたjavaプログラムをエクスポートしたものを
sample.jarとしよう。

で、sample_dirというディレクトリに入れ込む。
MANIFEST.MFは↑↑↑上記で書き込んだとおり。


sample_dir
┣sample.jar
┣jcommon-1.0.0.jar
┣jfreechart-1.0.1.jar
┣junit.jar
┣poi-2.5.1-final-20040804.jar
┣poi-contrib-2.5.1-final-20040804.jar
┣poi-scratchpad-2.5.1-final-20040804.jar
┣mysql-connector-java-3.0.17-ga-bin.jar
┗swt-win32-3139.dll


これで、javaのパスが通っていれば、sample.jarをダブルクリックで動くはず。

MANIFEST.MFの重要さがだんだんわかってきましたよ。
posted by morimori at 18:39| 宮城 晴れ| Comment(1) | TrackBack(0) | 【JAVA】いろいろ | このブログの読者になる | 更新情報をチェックする

2006年09月07日

TOMCATの再起動

久しぶりに更新。
JAVAハジメマシタ。


tomcatの再起動。←トラブッたらマジあせるから。

たぶん、ルート権限!

・プロセスの確認
#ps axw | grep tomcat

・強制終了
#kill -9 プロセス番号



普段やってるのと一緒でした…(T-T)ダラダラ(T^T)ズルズル-。
posted by morimori at 13:13| 宮城 雨| Comment(0) | TrackBack(0) | 【JAVA】いろいろ | このブログの読者になる | 更新情報をチェックする

2005年05月23日

日付の取得(明日とか昨日とか)

CGIでローカルタイムを使って今日の日付を取得する。
そいつを利用して、明日や今日の日付を取得する。

まずは、timeの特性。
1970年1月1日 00:00:00 からの秒数をかえすってこと。

要するにtimeに1日分の秒数を足すか引くかすれば、"きのう"または"明日"の日付が取得できるってわけです。

うだうだといってもしょうがないのでロジック行ってみよー!


$one_day=60*60*24*1;

$ass_tomorrow = time + $one_day;
$ass_yesterday= time - $one_day;

$tomorrow=localtime($ass_tomorrow);
$yesterday=localtime($ass_yesterday);

これで取得できるはずだ。試してないけど。





補足!!
$one_day=60*60*24*1;のところ、最後の部分を1→7にすれば7日後や7日前の日付も取得できる。
要するに最後の1の部分は日付になっているってこと。


60秒×60分×24時間×1日っていう計算をしているわけ。
この計算覚えておけば、time関数あるといつの日付でも取得できるっつーことです。




posted by morimori at 13:52| 宮城 曇り| Comment(1) | TrackBack(1) | 【CGI】その他 | このブログの読者になる | 更新情報をチェックする

2005年05月16日

javascript.window.open

こんな感じで、javascriptで新しくWindowを開く


<A HREF="javascript:void(0)" onClick="window.open('xxxxxx.html', 'newwin','width=820,height=600,toolbar=0,location=0,directories=0,status=0,scrollbars=0,resizable=0')">×××</A>




そして、こんな感じでWindowを閉じる

<A HREF="javascript:window.close()">閉じる</A>
posted by morimori at 18:45| 宮城 曇り| Comment(0) | TrackBack(0) | 【HTML】いろいろ | このブログの読者になる | 更新情報をチェックする

2005年04月20日

サーバのディレクトリのフルパス

モジュール化しようとしてた・・・orz

環境変数であっさり、フルパスわかるのね。
時間を無駄に使ってしまった・・・orz


○スクリプトまでのフルパスの環境変数
print $ENV{'SCRIPT_FILENAME'}


なんだけど、結局フルパスがわかるんだよね。


簡単なCGIですが。
dir_search.cgi
posted by morimori at 12:28| 宮城 曇り| Comment(0) | TrackBack(0) | 【CGI】ファイルシステム | このブログの読者になる | 更新情報をチェックする

2005年04月18日

エクセルで付加されるダブルクォートの除去

Windowsのエクセルで、CSVを作成すると、ダブルクォートを付加してくれて、CGI的にはやっかい。

んで、下記アドレスを参考に。(パクリまくりではありますが)
モジュール化。
インデントつけんのめんどくさい。
どうにかなんない・・・?

#エクセル作成のCSVファイルを配列にしたやつ。
@ASS_CSV_FILE



#呼び出し方
@CSV2PARSE=@{&CSV2CONVERT(@ASS_CSV_FILE)};




#モジュール
sub CSV2CONVERT{

 #my $spritkey=shift;
 my @EXAM_DATA=@_;#入力ファイル
 my @OUT_CONVERT; #出力ファイル
 foreach $line (@EXAM_DATA){

    my $tmp = $line;
    $tmp =~ s/(?:\x0D\x0A|[\x0D\x0A])?$/,/;
    @values = map {/^"(.*)"$/ ? scalar($_ = $1, s/""/"/g, $_) : $_}
      ($tmp =~ /("[^"]*(?:""[^"]*)*"|[^,]*),/g);

    @CSV2WORD=();
    foreach $ass_CSV2WORD (@values){
      #jcode::convert(\$ass_CSV2WORD, 'euc', 'sjis');
      #$ass_CSV2WORD=&form_parse($ass_CSV2WORD);
      push @CSV2WORD,$ass_CSV2WORD;
    }
    $CSV2PARSE=join(",",@CSV2WORD);

    push @OUT_CONVERT,$CSV2PARSE;
  }
  return \@OUT_CONVERT;
}



Perlメモ
http://www.din.or.jp/~ohzaki/perl.htm#CSV2Values
posted by morimori at 17:56| 宮城 | Comment(0) | TrackBack(0) | 【CGI】正規表現 | このブログの読者になる | 更新情報をチェックする

CSV形式 特殊なソート

データの形式がCSVのときの、ちょっと特殊なソート

@SORT_ENT_DATA = sort { (split(/\,/,$b))[2] <=> (split(/\,/,$a))[2] } @ASS_ENT_DATA;

csvデータの右から3個目のデータ(配列は右の0スタートなので)でソートする。
詳しくは、下記URLを見てください。


CGI-Perlの基礎講座
http://www.parkcity.ne.jp/~chaichan/src/perlmain.htm
http://www.parkcity.ne.jp/~chaichan/src/perl07.htm
posted by morimori at 17:25| 宮城 | Comment(0) | TrackBack(0) | 【CGI】その他 | このブログの読者になる | 更新情報をチェックする

リンクタグ除去

リンクタグの除去正規表現。
たぶん除去できるはず。
がんばれ!

# リンクタグ削除
$value =~ s%<a\s[^>]*href=[^>]*>%%sgio;
$value =~ s%</a>%%gio;
posted by morimori at 17:14| 宮城 | Comment(0) | TrackBack(0) | 【CGI】正規表現 | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。