JAVA初心者です。
ある日の曜日を取得したいのですが、うまく出来ません。
Calendarやら、DAY_OF_WEEKやらを使うと聞いたのですが、
どう記述すればいいのか全然分かりません。
やってもエラーばかり・・・。
例えば、2001年3月1日の曜日を取得するには、どうすればいいのでしょうか?
どうかよろしくお願いします!
開発環境は、JDK1.3です。

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

A 回答 (2件)

シンボルを解釈処理できません。


シンボル:変数 Calendar
位置  :calendar の クラス
とでるのは、対象となるクラスが見つからないからだと思います。
Calendarクラスは、java.utilパッケージ内にあるので、
そこをインポートすれば解消されると思います。

import java.util.*;
    • good
    • 2

Java2SDKドキュメントは御覧になったことがあるのでしょうか?


見れば一目瞭然だと思います。
オンラインだと参照に載せたとおりです。
(ダウンロードしてオフラインでも使えます。)
それでは本題に。。。
質問にあるとおりCalendarオブジェクトを実装します。
そして、DAY_OF_WEEKも使用します。

// まず、GregorianCalendarを使用してCalendarオブジェクトを実装します。この時、月は-1して指定します。
Calendar calendar = new GregorianCalendar(2001, 2, 1);

// Calendarオブジェクトからgetメソッドを使用して、曜日フィールドに格納されている値を取得します。
switch (calendar.get(Calendar.DAY_OF_WEEK)){

// 取得した曜日フィールドの値と各曜日を表す値を比較して曜日を得ます。
case Calendar.SUNDAY:
System.out.println("日曜日です。");
break;
case Calendar.MONDAY:
System.out.println("月曜日です。");
break;
case Calendar.TUESDAY:
System.out.println("火曜日です。");
break;
case Calendar.WEDNESDAY:
System.out.println("水曜日です。");
break;
case Calendar.THURSDAY:
System.out.println("木曜日です。");
break;
case Calendar.FRIDAY:
System.out.println("金曜日です。");
break;
case Calendar.SATURDAY:
System.out.println("土曜日です。");
break;
}

参考URL:http://java.sun.com/j2se/1.3/ja/docs/ja/index.html

この回答への補足

ありがとうございました!
で、早速してみたのですが、なぜかエラーがいっぱい出ます・・・。

シンボルを解釈処理できません。
シンボル:変数 Calendar
位置  :calendar の クラス

と出ます。
なぜでしょうか・・・。

補足日時:2001/03/19 13:35
    • good
    • 0
この回答へのお礼

出来ました!
本当に感謝してます。
ありがとうございました!!!
また、何かあればよろしくお願いします!

お礼日時:2001/03/19 14:17

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

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

このQ&Aを見た人はこんなQ&Aも見ています

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

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

Qエクセルで日報を作成時に指定曜日のセルの色を変える

エクセルで日報を作成しておりBに曜日を入力しております。
土曜日と日曜日だけセルの色を変更したいです。
条件書式で「土」と入力したら入力したセルの色を変更することは
できたのですが列全体の色を変更したいです。
A列には日付でB列には曜日を入力した状態でA列からZ列まで指定した
色に変えるのにはどうすれば宜しいでしょうか?
曜日は短くして土曜日→土、日曜日→日と入力します。

エクセルは2010を使用しております。

以上、宜しくお願いします。

Aベストアンサー

こんばんは!

>Bに曜日を入力しております
とありますが、B列が文字列だとしての一例です。

A~Z列すべてを範囲指定 → 条件付き書式 → 新しいルール → 数式を使用して・・・ → 数式欄に
=$B1="土"
として → 書式 → 塗りつぶしから好みの色を選択しOK
同様に「日」も設定します。

※ $マークの位置に注意してください。

余計なお世話かもしれませんが、A列がシリアル値の場合はそれを利用する方法もあります。
範囲指定 → 条件付き書式 →数式を使用して・・・ → 数式欄に
土曜の場合
=AND($A1<>"",WEEKDAY($A1)=7)
日曜の場合
=WEEKDAY($A1)=1
としれそれぞれ好みの色を選択します。

注意点として空白セルの場合、Excelは「土曜」と判断してしまいますので、
条件に「空白以外」を追加しておきます。m(_ _)m

Qjdk1.3で実行すると・・・

jdk1.3でコンパイルし実行すると

Exception in thread "main" java.lang.NullPointerException
at java.util.Hashtable.put(Hashtable.java:385)
at java.awt.GridBagLayout.setConstraints(GridBagLayout.java:357)
at rei008.<init>(rei008.java:144)
at rei008.main(rei008.java:20)

というメッセージが出てプログラムが実行できません。
なぜなんでしょうか?宜しくお願いします。

Aベストアンサー

1.「初期化していない」または「値をセットしていない」変数をアクセスしていませんか。
2.戻り値に値が入っていますか。
3.DBやファイルから読み込んだ値は本当にありますか。

NullPointerExceptionの場合はこれをチェックしています。

Qエクセルで指定曜日の縦の列のセルに色をつける

いつもお世話になっています。エクセルに関して質問いたします。
前回の質問(見ていない方は申し訳ありません)で管理表で横列に曜日と日付を自動で
出力させたいの件はおかげさまで解決しました。
次に特定の曜日(土日)の縦の列の選択した範囲でセルに自動で色付けを行いたいと思い各HPを
参考にさせていただていたのですが、今度は横の色付けはあったのですが、縦方向の色付けが
見つかりません。そこでまた皆様のお力をお借りいたします。

例)A1のセルに土B1に日と表示されている場合A1~A10までのセルの色を青、B1~B10までのセルを赤の様に自動で表示させたい。

どうかご教授お願いいたします。

Aベストアンサー

>説明が足りずに申し訳ありません。エクセルのバージョンは2003です。

えっと? それはやり方が判らないのでまた教えて欲しいって事でしょうか。
でしたら,A1とかじゃなくてキチンと「どこの番地」に「何を」計算しているのかから,ご相談で情報提供すべきですね。


再掲:
A1(1行目)に年/月/日を計算し,右に並べておく
1行目の表示は「日」だけ表示にしておくのでかまわない
A2(2行目)に =TEXT(A1,"aaa") を記入して曜日を表示し,右にコピーして並べておく

A1からB10を選択
A1がアクティブセルになっている(選択範囲の中で逆反転状態になっている)ことを確認してから
書式メニューの条件付き書式で
セルの値が → 数式が に変更し
右の空欄に
=OR(A$2="土",A$2="日")
として,書式ボタンで色を塗る。

QExceptionのStackTraceをStringに格納したい(JDK1.3)

Exception発生時のStackTraceをString変数に格納してエラー時のログ出力等の処理に使用したいと思っており、StackTraceをStringに格納する方法で思案しております。JDK1.4であればgetStackTrace()等が使えそうですが、当方はJDK1.3を使用しており、1.4から実装されたgetStackTrace()は使用できないために独自にコーディングする必要があると思っております。

なにかよい方法はないでしょうか。Stringは配列になってももちろんかまいません。サンプルロジックや参考HP等を紹介していただきたいと思っております。

よろしくお願いいたします。

Aベストアンサー

StringWriterをラップするPrintWriterを作って、printStackTrace(PrintWriter s)で出力すれば?

Qエクセル 特定の単語が入力されたときにセルの色を変える

エクセル 特定の単語が入力されたときにセルの色を変える

A1に日付を入力すると、A2に自動的に曜日が入る数式を入れています。

カレンダーのように1ヶ月分がまとめて表示されているわけではなく、入力が必要な日だけ日付を入れるような表になるのですが、土曜や日曜の場合、曜日のセルの色を変える方法を教えていただけますでしょうか。

条件付書式でやってみたのですが、曜日のセルに数式を入れて自動的に表示させている場合、うまくできませんでした。(直接、土曜や日曜と入力するときちんと色が変わったのですが)

Aベストアンサー

No.5です!
たびたびごめんなさい。
投稿した後で、No.1さんの補足を読ませてもらいました。
A2セルにどのように曜日を表示されているのか判らないので
前回同様の方法ですが、A2セルの条件付書式の
数式欄の(A2)の部分を(A1)に変更してみてください。

=WEEKDAY(A1)=7 といった具合です。

これであればA2の数式・表示形式などは関係なく色を変えることが出来ると思います。

どうも何度も失礼しました。m(__)m

QJDKバージョン1.3.1以上1.4以下のものを探しています。

JAVAの事が良く分かってなくて恐縮ですが、
バージョン1.4(もしくは1.3.1以上1.4以下)のJDKが必要で、探しているのですが、見つけられません。
どなたか入手先を教えてください。

Aベストアンサー

Archive: Java[tm] Technology Products Download
http://java.sun.com/products/archive/

Qエクセルの数式で第三水曜日に色を付ける

こんにちは、非常に困っているので知恵を貸して下さい。

エクセルのセルA1に「=NOW()」を入力し、現在の月(今で言うと2013年10月)が入力されるようになっています。

そしてセルA2からAE2までは、A1の月の初めの日付から順番に記入されるように数式を組んでいます。(今で言うと2013年10月1日~2013年10月31日)

そこで質問なのですが、第三水曜日に色を付けるたい(月が変化しても自動で第三水曜日に色を付ける)には「条件付き書式」を使用すれば良いと思うのですが、数式がわかりません。

どの様な数式もしくはVBAを組めば宜しいでしょうか、ご教授お願いします。

Aベストアンサー

A2の「条件付き書式」に

条件1:数式が =AND(DAY(A2)>=15,DAY(A2)<=21,WEEKDAY(A2)=4)=TRUE で、塗りつぶし色を指定

と設定して、A2を選択してコピー、A2が点滅したら、B2~AE2を選択して「編集」「形式を選択して貼り付け」「書式のみ」で貼り付け。

「第3○曜日」の場合、DAY(A2)は、15以上21以下です。

「水曜日」の場合、WEEKDAY(A2)は、水曜日を表す4です。

なので「DAY()が15以上、かつ、DAY()が21以下、かつ、WEEKDAY()が4、が真(TRUE)」の場合に、色を付ければ良いのです。

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」が出力されます。

Qエクセルのセルの色を任意の色の出来ますか?

エクセルのセルの色を任意の色の出来ますか?
四角形の図を使ってユーザー設定で好きな色に出来るのですが
セルの色は少ししか選べません。
何か方法は無いでしょうか?

Aベストアンサー

パソコンの出せる色RXGXBで255X255X255の1600万色ーー>パレットに載せる色をユーザーが56種選択ーー>エクセルでは、そのカラーパレットの色の中から色を選択 というしくみのようだ。
それと
エクセルで
ツールーオプションー「色」タブー変更する色の「☐」(小四角)をクリックー「変更」ボタンー変更後の色(部分)をクリック
ーー
すると書式ーセルーパターンで出るパレット色のその位置の色も変わっているはずだ。
VBAでは
Sub test01()
Cells(2, "B").Interior.ColorIndex = 1
End Sub
で設定することがあるが、同じColorIndex =1の1でもカラーパレットの色の設定状況で、セルのパターン色が別になるということ。
ーー
>セルの色は少ししか選べません。
少しとは何種類ぐらいのこと?。
何のことを言っているかわかりにくい質問。
56色は数としては少ないようだが、人間の目には10数種ぐらいしか、普通にぱっと見て、識別できないのではないですか。

QJDK1.3のエラー表示について

JDK1.3のエラー表示についてなんですが、エラー表示が10個ぐらいでるとエラーが多すぎて1個目からのエラーが上の方にいってしまって見えなくなってしまいますよね。
あれはどんなふうにして見たらいいのでしょうか?
宜しくお願いします。

Aベストアンサー

javac -Xstdout ???.java >error.txt
のようにすればリダイレクトできたと思います。お試しください。

javaのコンパイルは、バッチファイルを作って、pathの通ったディレクトリに置くと便利ですよ。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報