javaの時刻更新について質問です。
jLabel4.setText(year + "/" + month + "/" + day + " " + dow+ " " + hour + ":" + minute );
に入る時刻を1秒間隔で更新したいのですが、どうしたらいいのか分からないのです。

他のサイトでtimerが使えると聞いたので調べてみたのですが、よくわからなくて。。。
プログラムのどこから記述していいのかさっぱりで。
分かる方には馬鹿な質問ですが、よろしければお知恵をお貸しください。

private void tokei() {
Calendar cal1 = Calendar.getInstance(); //(1)オブジェクトの生成
int year = cal1.get(Calendar.YEAR); //(2)現在の年を取得
int month = cal1.get(Calendar.MONTH) + 1; //(3)現在の月を取得
int day = cal1.get(Calendar.DATE); //(4)現在の日を取得
int hour = cal1.get(Calendar.HOUR_OF_DAY); //(5)現在の時を取得
int minute = cal1.get(Calendar.MINUTE); //(6)現在の分を取得

StringBuffer dow = new StringBuffer();
switch (cal1.get(Calendar.DAY_OF_WEEK)) { //(8)現在の曜日を取得
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;
}
jLabel4.setText(year + "/" + month + "/" + day + " " + dow
+ " " + hour + ":" + minute );
}
}

このQ&Aに関連する最新のQ&A

A 回答 (1件)

java swing 時計 とかでぐぐれば使えそうな例いろいろでてきますよ。



参考URLはデジタル時計の例です。

参考URL:http://www.geocities.jp/s2412502/d_tokei.html
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
さっそく参考にして取り掛かってみます。

お礼日時:2009/05/15 18:18

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qホームページの1記事の更新時間について

wordpressのホームページをやろうと考えているのですが、ホームページビルダーを使っても1記事更新するのすごい時間がかかる(1時間ぐらい)と聞いた事があるのですが、ブログでは直ぐさまに記事更新できますが、本当の事でしょうか?ブログと変わらない更新スピードであればいいのですが、ホームページの場合時間がかかるのであればどのようにすれば少しでも早く更新スピードを上げればいいでしょうか?ご教授下さい。

Aベストアンサー

Webページそのものの更新時間は「ファイルをアップロードした」その瞬間です。

「更新する」と言うのが、「ページを修正する」と言う意味なら、それはそのページ構成と製作者の技量次第。

アップロード後にWebブラウザで見たら「更新する前のページが表示された」と言う場合は、Webブラウザがキャッシュしているファイルが表示されているだけなので、強制的に表示更新させれば、ちゃんと表示出来る。

検索サイトで検索に引っかかるようになるのは、新規サイトなら数ヶ月~半年程度、既存サイトで既に検索サイトで引っかかるような場合は、数時間~数日みておく必要がある。

QJavaのCalendarのMONTHはなぜ0から始まるのですか

最近Javaを学び始めたものです。

CalendarクラスのMONTHフィールドについてですが、1月から12月がそれぞれ0から11に対応しているのは、何か意味があるのでしょうか?

特に困っているわけではありませんが、なんとなく疑問になったもので。もし知っている方がおられればお願いします。

Aベストアンサー

仕様です。
配列は何故0番からなの?と同じです。

Q免許更新にかかる時間

はじめまして、今度初めて免許更新するものです。
早速なんですが、試験場で免許更新をするとどのくらい時間がかかるのでしょうか?

受付時間は午前8時30分~11時00分と午後1時00分~2時30分の2つあるのは調べて分かりました。さらに、当日の流れも、受付・照会→適性検査→写真撮影→運転者講習→免許交付、と調べたのですが、いったいこれらに全部でどのくらいの時間がかかるのかがわかりません!!

更新した事があるからいましたら是非教えてください!!大体何時ご頃帰れるとか、講習は1時間くらいとか…

Aベストアンサー

免許の色によって講習時間が違います(更新ハガキに記載されています)
私は数ヶ月前に更新でしたがブルーだったので
受付~終了(免許交付)まで約3時間位でした。

QgetActualMaximum(Calendar.DAY_OF_MONTH) について

こんばんは。今GUIを作成しているのですが、
Jテキストフィールドに入力した年と月をもとに、その年のその月の日数分、日付と曜日をJラベルで表示させていたのですが、昨日までは問題なく動作していたのですが、いつの間にか2月の表示が31日まで表示されるようになっていました。4月はちゃんと30日まで表示されていました。原因がよくわからないので、以下のプログラムを作成し、今年の2月が何日あるか調べてみたのですが、出力結果は31でした。

import java.util.Calendar;

public class Cal{

public static void main(String[] args){

Calendar day=Calendar.getInstance();

day.set(Calendar.YEAR,2008);

day.set(Calendar.MONTH,1);

int niti=day.getActualMaximum(Calendar.DAY_OF_MONTH);

System.out.println(niti);
}
}

昨日まではこういったやり方で問題なくその年のその月の日数が出せたのですが、なにがおかしいのか原因がわかりません。どなたか悪い部分を教えてはいただけませんか。
こちらの環境ですが、windows vistaに、JavaSE6 Update4です。
よろしくおねがいします。

こんばんは。今GUIを作成しているのですが、
Jテキストフィールドに入力した年と月をもとに、その年のその月の日数分、日付と曜日をJラベルで表示させていたのですが、昨日までは問題なく動作していたのですが、いつの間にか2月の表示が31日まで表示されるようになっていました。4月はちゃんと30日まで表示されていました。原因がよくわからないので、以下のプログラムを作成し、今年の2月が何日あるか調べてみたのですが、出力結果は31でした。

import java.util.Calendar;

public class Cal{

p...続きを読む

Aベストアンサー

今日の日付が30日のためです。
年に2008年、月に2月を設定しているので
2008/2/30となり、2008/3/1と解釈されてしまいます。

よって、3月は31日まであるので「31」が出力されます。

QCGIゲームの更新時間って何ですか?

僕が借りようと思っているレンタルサーバーで
CGIゲームについての欄で
『更新時間は、10分以上でお願いします。』
と言う記述があったのですが
ここで言う更新時間とは何ですか?
わかる方教えてください。

Aベストアンサー

たとえば箱庭諸島2というゲームであればデフォルトは6時間です。
つまり、何らかの変化や動作がある(可能になる)時間をさすものとおもいます。

更新時間の意味はサーバーによっても違いますし、禁止されているCGIを見たり(利用規約やFAQなどにあります)、サーバーにお問い合わせをしてみるのもいいと思います。

更新時間が長くても1度に大量の処理を行なうものは禁止されていることもあります(箱庭諸島等)

Qread(buf,int,int)メソッドで1文字取得する

javaを使ってプログラミングを勉強しています。

read(buf,int,int)メソッドで受信したバイトデータをbufに格納していると思うのですが、
格納したバイトの最後の文字を取得する方法が分かりません。

送信側では送信バイトの最後の文字をsにして送信します。
受信側では読み込んだバイトデータの最後の文字がsだったら、
ループを抜けるというようにしたいのです。

どうやって最後の文字を取得するのでしょうか?

Aベストアンサー

read(byte[], int, int)の返値を見れば何バイト読み込めたのかは分かるのですから、その値を使って配列の添字を計算するだけです。

Qディレクトリ内にあるファイルの最終更新時間を取得したい

指定したディレクトリ内に自動生成されて保存されるファイルの最終更新時間を取得したいと思っています。

hogeというディレクトリがあったとして
この中に200511.logというファイルがあり日々更新されて行きます。
ただし、月が変わると200512.logと新しいファイルが生成されてまた更新されて行くような感じです。
この場合、ただ
<?php echo "最終更新: " . date("Y-n-d", filemtime('hoge/200511.log')); ?>
とすれば、当月は良いのですが、来月になったら更新されなくなってしまいます。
ディレクトリの時間でやってみたらどうかと思い、
<?php echo "最終更新: " . date("Y-n-d", filemtime('hoge/')); ?>
とやってみましたが、これだと、ただ単にhogeというディレクトリ自体の更新が表示されてしまいました。(当たり前か。。)

つまりやりたい事は、hogeディレクトリ内でなにか変化が起きたらその時間を表示したい、ということなのですが、どうすれば良いでしょうか?

指定したディレクトリ内に自動生成されて保存されるファイルの最終更新時間を取得したいと思っています。

hogeというディレクトリがあったとして
この中に200511.logというファイルがあり日々更新されて行きます。
ただし、月が変わると200512.logと新しいファイルが生成されてまた更新されて行くような感じです。
この場合、ただ
<?php echo "最終更新: " . date("Y-n-d", filemtime('hoge/200511.log')); ?>
とすれば、当月は良いのですが、来月になったら更新されなくなってしまいます。
ディレクト...続きを読む

Aベストアンサー

既に解決済みでしょうか・・


$filename = exec("ls -c1 hoge/");

で一番最後にファイルステータスを更新したファイル名を取得できますので、これを元に処理をしてみてはどうでしょうか。

QString(byte[] bytes, int offset, int length)の文字コードは?

String(byte[] bytes, int offset, int length)は、バイト配列(8bitずつのまとまり)を、文字列型に直す、というものだと思うのですが文字コードは何にしたがって直すのでしょうか?

http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/java/lang/String.html

Aベストアンサー

http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/java/lang/String.html#String%28byte[],%20int,%20int%29

>プラットフォームのデフォルト文字セットを使用して、

日本語WindowsならShift_JISでしょう。他の環境では解りません。

#なので僕は

http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/java/lang/String.html#String%28byte[],%20int,%20int,%20java.lang.String%29

で指定するほうが好きです。(コードを読む人に,誤解を与えにくく,異なる環境でも挙動を一致させやすいから移植性も高まると考えるため)

どうしてもデフォルトがほしけりゃ
http://java.sun.com/javase/6/docs/api/java/nio/charset/Charset.html#defaultCharset%28%29
があるわけですし

http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/java/lang/String.html#String%28byte[],%20int,%20int%29

>プラットフォームのデフォルト文字セットを使用して、

日本語WindowsならShift_JISでしょう。他の環境では解りません。

#なので僕は

http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/java/lang/String.html#String%28byte[],%20int,%20int,%20java.lang.String%29

で指定するほうが好きです。(コードを読む人に,誤解を与えにくく,異なる環境でも挙動を一致させやすいか...続きを読む

Qシート内で変更があった場合に、更新日付・時間を表示

エクセルで”値の更新(Vlookupを使ってブックリンクしています)”後、
値に変化があった場合、更新された日付・時間を表の「A2」箇所に
表示させたい場合は、どうすればよいでしょうか。

WEBからコピペした下記マクロを使ってみました。
---------------------------------------------------------------------
Function LastSaveTime()

Application.Volatile
LastSaveTime = ThisWorkbook.BuiltinDocumentProperties("Last save time").Value

End Function
---------------------------------------------------------------------

こちらですと、直接セルに文字を入力した場合は更新時間が変化するのですが、
ブックリンクの”値の更新”で再計算された場合には、時間が変更されませんでした。
値の更新後、値に変化があった場合にも日時が更新されるようにするには
どうしたらよろしいでしょうか。


上手く説明ができず、申し訳ございませんが宜しくお願い致します。

エクセルで”値の更新(Vlookupを使ってブックリンクしています)”後、
値に変化があった場合、更新された日付・時間を表の「A2」箇所に
表示させたい場合は、どうすればよいでしょうか。

WEBからコピペした下記マクロを使ってみました。
---------------------------------------------------------------------
Function LastSaveTime()

Application.Volatile
LastSaveTime = ThisWorkbook.BuiltinDocumentProperties("Last save time").Value

End Function
----------------------------------------...続きを読む

Aベストアンサー

こんばんは!
外していたらごめんなさい。

操作したいSheet見出し上で右クリック → コードの表示 → VBE画面に↓のコードをコピー&ペーストしてみてください。

Private Sub Worksheet_Calculate()
With Range("A2")
.Value = DateValue(Now()) + TimeValue(Now())
.NumberFormatLocal = "yyyy/m/d h:mm:ss"
End With
End Sub

ではどうでしょうか?
尚、日付・時間表示は好みによって変更してみてください。m(__)m

QCalendarクラスの日付更新について

ある日付を追加した時,うまく正式な日付になりません。
(1) 2002年9月30日にセットする
(2) 1日追加する --→この時点で2002年9月31日になっている。
(3) 10月1日に正式な日付に直す
という流れなのですが・・・
ソースは以下のとおりです。

public static void main(String[] args) {

       Calendar cal = new GregorianCalendar();
    /*(1)*/     cal.set(2002,9,30);
   /*(2)*/     cal.add(Calendar.DATE,1);
/*(3)*/ cal.set(cal.get(Calendar.YEAR),cal.get(Calendar.MONTH),cal.get(Calendar.DATE) );

System.out.println(cal.get(Calendar.YEAR) "年"+ cal.getCalendar.MONTH) +"月"+ cal.get(Calendar.DATE) +"日");
}
と、表示させると2002年10月1日になっておらず2002年9月31日になったままです。
これはどこに原因があるのでしょうか?ご指導お願いします。

ある日付を追加した時,うまく正式な日付になりません。
(1) 2002年9月30日にセットする
(2) 1日追加する --→この時点で2002年9月31日になっている。
(3) 10月1日に正式な日付に直す
という流れなのですが・・・
ソースは以下のとおりです。

public static void main(String[] args) {

       Calendar cal = new GregorianCalendar();
    /*(1)*/     cal.set(2002,9,30);
   /*(2)*/     cal.add(Calendar.DATE,1);
/*(3)*/ c...続きを読む

Aベストアンサー

>(1) 2002年9月30日にセットする

と書いていますが、ソースは

>cal.set(2002,9,30);

と、2002.10.30 になってしまっています。
月は 0~11 が 1月~12月と対応しており、
cal.set(2002,0,1); で 2002.1.1 になります。
10月は31日までですから、次の月にはなりません。


人気Q&Aランキング

おすすめ情報